IEnumerator接口实现了循环遍历集合的功能(枚举)。IEnumerable接口实现了说明该类是否支持循环遍历的功能(可枚举)。
IEnumerator接口实现了2个方法1个属性。1个属性为Object Current;2个方法为bool MoveNext(),void Reset();
IEnumerable接口实现了1个方法。IEnumerator GetEnumerator();
foreach里面先是使用了IEnumerable接口的GetEnumerator,获取到IEnumerator列表,再调用列表中的MoveNext和Current,进行遍历。
如果某类没有实现IEnumerable,是无法使用foreach的。