1、数组Array类,继承了接口IEnumerable,可迭代,所以能调用GetEnumerator()方法。如下两种访问数组元素的方式都能实现。
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace EnumeratorDemo
{
class Program
{
static void Main(string[] args)
{
int[] MyArray = { 10, 11, 12, 13 };
// 打印每个项的方式一
//foreach (int num in MyArray)
//{
// Console.WriteLine(num.ToString());
//}
// 打印每个项的方式二 其实也是用了数组默认的可迭代特性
IEnumerator ie = MyArray.GetEnumerator();
while (ie.MoveNext())
{
int i = (int)ie.Current;
Console.WriteLine("{0}", i);
}
Console.ReadLine();
}
}
}
2、对于非泛型集合,要迭代元素,可以通过实现IEnumerable接口的GetEnumerator()方法。至少实现IEnumerator接口的M