如何在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

回到顶部