查了一些资料后发现,是自己在利用Arry.Foreach()遍历数组的同时,还利用lambda表达式修改数组;(比如你一边遍历数组,然后在中间增删项)
所以就出现,修改后的数组其下标序号就发生了改变,此时循环继续,就会报错——“可能无法执行枚举操作”;
找到原因后就简单了;
如果你只修改一次数据的话,修改后break()退出循环就好了;
但是在lambda表达式中好像不能用break()跳出循环,所以换个方式用for或者foreach(e in Array)
查了一些资料后发现,是自己在利用Arry.Foreach()遍历数组的同时,还利用lambda表达式修改数组;(比如你一边遍历数组,然后在中间增删项)
所以就出现,修改后的数组其下标序号就发生了改变,此时循环继续,就会报错——“可能无法执行枚举操作”;
找到原因后就简单了;
如果你只修改一次数据的话,修改后break()退出循环就好了;
但是在lambda表达式中好像不能用break()跳出循环,所以换个方式用for或者foreach(e in Array)