foreach 内部使用枚举器迭代,而这个迭代器在一开始的时候就返回了,它的迭代次数已经确定了, 如果后面更新了集合,导致之前的迭代次数不一致,就会出现上述错误。
当使用 foreach 的时候,集合只能处于只读状态,否则产生不可以预期的效果
这个是使用foreach的典型的问题。foreach是取只读的,在取的时候数据不能变(包括修改,删除,添加等)。
要避免这个问题,就应该使用for循环。
foreach 内部使用枚举器迭代,而这个迭代器在一开始的时候就返回了,它的迭代次数已经确定了, 如果后面更新了集合,导致之前的迭代次数不一致,就会出现上述错误。
当使用 foreach 的时候,集合只能处于只读状态,否则产生不可以预期的效果
这个是使用foreach的典型的问题。foreach是取只读的,在取的时候数据不能变(包括修改,删除,添加等)。
要避免这个问题,就应该使用for循环。