C#使用foreach循环的注意点

1.不能在在循环内部删除或增加元素;

可能原因是,在执行foreach循环时,集合内部有一个变量用于记录集合中元素的个数,每次遍历时会检测这个变量有无发生变化,如果发生变化,则抛出异常。

2.不能在循环内部修改元素(无论值类型还是引用类型);

可能原因是,在遍历IEnumerator<T>的过程中,把当前的元素(即Current)暴露为只读属性。

3.可以在循环内部修改对象的属性。

猜你喜欢

转载自blog.csdn.net/u013986317/article/details/80643139