问题
在使用foreach执行列表移除操作时,报错
代码
foreach (var item in list)
{
if (判断条件)
{
list.Remove(item);
}
}
解决
方法一**:使用for循环**
for (int i = 0; i < list.Count; i++)
{
if (判断条件)
{
list.RemoveAt(i);
i--;
}
}
方法二:使用ToArray方法
foreach (var item in list.ToArray())
{
if (判断条件)
{
list.Remove(item);
}
}