一.迭代器方法介绍
可使用foreach
循环进行遍历的方法,称为迭代器方法。
迭代器方法使用yield return语句返回元素。 到达yield return语句时,会记住当前在代码中的位置。 下次调用迭代器函数时,将从该位置开始执行。换言之,如果语句中出现yield关键字,则意味着它出现的方法是迭代器方法。
在以下示例中,foreach
循环的首次迭代使 SomeNumbers
迭代器方法执行,直至到达第一个 yield return
语句。 此迭代返回的值为 3,并保留当前在迭代器方法中的位置。 在循环的下次迭代中,迭代器方法的执行将从其暂停的位置继续,直至到达 yield return
语句后才会停止。 此迭代返回的值为 5,并再次保留当前在迭代器方法中的位置。 到达迭代器方法的结尾时,循环完成。
class MainClass
{
public static IEnumerable SomeNumbers()
{
yield return 3;