[C#]集合已修改;可能无法执行枚举操作

前端之家收集整理的这篇文章主要介绍了[C#]集合已修改;可能无法执行枚举操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

摘要

修改的集合进行操作就会出现这个错。

解决办法

代码,我们创建一个集合,并向集合中添加10个数,然后,我们循环再将这些数移除了。

Main(<> lst = List<> ( i = ; i < ; i++ ( item

30173707325-901990065.png" alt="">

方法坑了?我记得很久之前我也被坑过。很疑惑吧,其实也很简单,因为你如果移除了一项,集合的元素个数是变化的。这个时候元素会重排,第二个元素的索引由1变为0,后面的依次往前移动。

Main(<> lst = List<> ( i = ; i < ; i++ result = + + ( i = ; i < lst.Count; i++

代码为集合添加10个元素。然后输出当前集合的count,接着将索引为0的元素移除。这个时候集合中应该没有元素0了。然后输出集合的元素个数。输出此时的集合中索引和对应的值。如图所示

30174554622-928406122.png" alt="">

Main(<> lst = List<> ( i = ; i < ; i++ result = + + ( i = lst.Count - ; i >= ; i--

30175238638-1858005382.png" alt="">

Main(<> lst = List<> ( i = ; i < ; i++ result = + + ( i = ; i < lst.Count; i++ (lst[i] % == } Console.Read(); }</span></pre>

30175631028-1651972608.png" alt="">

总结

原文链接:https://www.f2er.com/csharp/191527.html

猜你在找的C#相关文章