当List数组,
...
List<int> list_ = new List<int>();
...
foreach(int i in list_)
{
list_.remove(i);//Error: Collection was modified; enumeration operation may not execute.
}
//list_ = new List<int>();
...
应该在list_的foreach循环中 移除list_.remove(i);这段代码。
并且在foreach循环的外面,或者下面添加一个代码实现同样 初始化 list_的效果。
list_ = new List<int>();

本文探讨了在C#中使用List<int>类型进行元素遍历与删除时遇到的Collection was modified错误。通过示例代码解释了为何在foreach循环中直接调用remove方法会导致此错误,并提供了正确的元素移除方法,即在循环外部重新初始化List。

被折叠的 条评论
为什么被折叠?



