1. 迭代器是可以返回相同类型的值的有序序列的一段代码。 2. 迭代器可用作方法、运算符或 get 访问器的代码体。 3. 迭代器代码使用 yield return 语句依次返回每个元素。yieldbreak 将终止迭代。 4. 可以在类中实现多个迭代器。每个迭代器都必须像任何类成员一样有唯一的名称,并且可以在foreach 语句中被客户端代码调用,如下所示:foreach(int x in SampleClass.Iterator2){}。 5. 迭代器的返回类型必须为 IEnumerable、IEnumerator、IEnumerable<(Of<(T>)>) 或 IEnumerator<(Of <(T>)>)。 6. 迭代器是 LINQ 查询中延迟执行行为的基础。 7. yield 关键字用于指定返回的一个或多个值。到达yield return 语句时,会保存当前位置。下次调用迭代器时将从此位置重新开始执行。 8. 迭代器对集合类特别有用,它提供一种简单的方法来迭代复杂的数据结构(如二进制树)。
|