1、C#中的foreach语句隐匿了枚举数的复杂性,方便我们访问——迭代器技术
2、与迭代器有关的接口:IEnumerable和IEnumerator接口:
IEnumerable接口:要使用Foreach遍历,必须实现IEnumerable接口或者实现GetEnumerator()方法,即必须以某种方式返回
IEnumerator object;
IEnumerator接口:具体实现了Iterator。MoveNext方法将枚举数推进到下一个元素;ReSet方法将枚举数设置为其起初置, 该位
置位于集合中的第一个元素之前;Current属性记录了集合中当前的枚举数;
IEnumerable接口只是声明该class是可枚举的,需要实现GetEnumerator方法,返回类型为IEnumerator,实现迭代;
IEnumerator接口是一个实现接口,实现这个接口,就能实现迭代;
3、使用yield实现迭代
yield return语句产生迭代的下一个值。
yield break语句表示迭代完成。
4 关于迭代器的Demo
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/itzsl/archive/2009/09/29/4616841.aspx