在foreach语句中,只有实现了IEnumerator,IEnumerator接口的类才可以调用。
现在自己制作一个foreach迭代的数据,迭代可以不用知道有多少条数据,不用知道索引。
使用迭代器,默认的迭代方法是GetEnumerator
不必显示调用。
代码如下。
调用代码:
输出结果
在GetEnumerator方法中,不能有return语句,只能有yield return 或者yield break;
如何实现多个迭代器?
我使用了多个IEnumerator 返回参数的 方法,结果提示错误。
最后发现原来IEnumerator 是默认的。多个迭代器须返回IEnumerable
调用代码:
好了,大家自己去测试输出结果吧。