吴佳鑫的个人专栏

当日事当日毕,没有任何借口

导航

深入foreach工作方式

IEnumerable 接口负责使用foreach循环。

下面说明在foreach中,迭代集合collectionObject的过程如下:

1.调用collectionObject.GetEnumerator(),返回一个 IEnumerator引用。这个方法可以通过IEnumerable接口的实现代码来获得,但这是可选的。

2.调用所返回的IEnumerator接口的MoveNext()方法。

3.如果MoveNext()方法返回true,就使用IEnumerator接口的 Current属性获取对象的一个引用,用于foreach循环.

4.重复前面两步,直到MoveNext()方法返回false为止,此时循环停止。

 

posted on 2011-12-05 00:22  _eagle  阅读(262)  评论(0编辑  收藏  举报