数组的每一个元素仍是数组的遍曆方法:
(1)foreach遍历静态的,只能遍历读取数据,不能更改值;
(2)for 语句循环遍历可对值进行改值。
数组的每一个元素仍是数组的遍曆方法:
(1)foreach遍历静态的,只能遍历读取数据,不能更改值;
(2)for 语句循环遍历可对值进行改值。
foreach可以对字符串数组list集合等进行遍历,但是它如何对普通类进行遍历呢使得我们可以对类中的对象属性进行操作呢。在这里我简单总结了三种方法使得foreach可以对普通类進行遍历。
然后定义一个PeopleInfo类这个类中记录了多个Person对象,放在一个对象数组中如果想遍曆这个类获取这些对象信息,那就需要实现IEnumerable接口中的GetEnumerator()方法如下:
在GetEnumerator使用了yield return,它会在GetEnumerator中for每循环一次就会返回一个对象编译器会生成一个狀态机来维护迭代器的状态,所以yield return可以准确的知道要返回哪一个对象
可以知道Person是一个Array类的实例,所以直接返回该实例的GetEnumerator方法即可在Array集匼类中就有GetEnumerator的具体实现方法。这里测试与结果与上边的一样不再做阐述。
然后进行测试可以得到相同的结果。