.Net中的设计模式——Iterator模式
在.Net中,我们很少有机会使用Iterator模式,因为.Net Framework已经运用Iterator模式为所有的集合对象实现了迭代器。我们在遍历集合对象时,喜欢使用C#提供的foreach语句来访问该对象中的所有元素,例如访问
ArrayList对象al:
foreach (object o in al)
{
Console.WriteLine(o.ToString());
}
而该语句的实质就是使用了迭代器:
IEnumerator e = al.GetEnumerator();
while (e.MoveNext())
{
Console.WriteLine(e.Current.ToString());
}
然而,我们通过.Net中的集合对象来分析Iterator模式,仍然是有意义的。一方面它可以帮助我们了解这个模式的实现原理;另一方面,通过Iterator模式将具体的集合对象与迭代器分开的设计方式,也可以促进我们对OOD中,有关“职责分离”的理解。
本文链接:《.Net中的设计模式——Iterator模式》
ArrayList对象al:
foreach (object o in al)
{
Console.WriteLine(o.ToString());
}
而该语句的实质就是使用了迭代器:
IEnumerator e = al.GetEnumerator();
while (e.MoveNext())
{
Console.WriteLine(e.Current.ToString());
}
然而,我们通过.Net中的集合对象来分析Iterator模式,仍然是有意义的。一方面它可以帮助我们了解这个模式的实现原理;另一方面,通过Iterator模式将具体的集合对象与迭代器分开的设计方式,也可以促进我们对OOD中,有关“职责分离”的理解。
本文链接:《.Net中的设计模式——Iterator模式》
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步