如何在C#中遍历可枚举集合时修改或删除项目
我必须从数据表中删除一些行。我听说在迭代过程中更改集合是不合适的。因此,我应该首先遍历数据表并在列表中添加所有行,然后遍历列表并标记,而不是先检查一行是否满足删除要求然后将其标记为已删除的for循环。删除行。是什么原因造成的?我有什么选择(而不是使用我指的是行列表)?
回答:
如果使用简单for
循环,则可以从集合中删除元素。
看一下这个例子:
var l = new List<int>(); l.Add(0);
l.Add(1);
l.Add(2);
l.Add(3);
l.Add(4);
l.Add(5);
l.Add(6);
for (int i = 0; i < l.Count; i++)
{
if (l[i] % 2 == 0)
{
l.RemoveAt(i);
i--;
}
}
foreach (var i in l)
{
Console.WriteLine(i);
}
以上是 如何在C#中遍历可枚举集合时修改或删除项目 的全部内容, 来源链接: utcz.com/qa/418390.html