1.foreach遍历集合:
1) 简单来说IEnumerable是一个声明式的接口,声明实现该接口的类就是“可迭代的enumerable”,但并没用说明如何实现迭代器(iterator).
2) 而IEnumerator接口是实现式接口,它声明实现该接口的类就可以作为一个迭代器iterator.
3)一个collection要支持Foreach进行遍历,就必须实现IEnumerable,并一某种方式返回迭代器对象:IEnumerator.
一般而言,如果是类,就要实现GetEnumerator 函数,该函数返回IEnumerator类型;如果是类成员,比如一个方法,则要返回一个可迭代对象即IEnumerable类型;