thirdlevelIntersection

thirdlevelIntersection

我已经定义了一个列表为

List<List<int>> thirdLevelIntersection = new List<List<int>>();


我写的代码是

for(int i = 0; i < 57; i++)
{
    if(my condition)
        thirdLevelIntersection[i] = null;
    else
    {
       //some logic
    }
}


所以我得到了0到56个值的列表,有些值是空的,例如thirdlevelIntersection [1],thirdlevelIntersection [10],thirdlevelIntersection [21],thirdlevelIntersection [21],thirdlevelIntersection [14],thirdlevelIntersection [15],thirdlevelIntersection [51] ](共7个)。

现在我想从列表中删除此值。

并有一个来自thirdlevelIntersection [0] thirdlevelIntersection [49]的列表。

我该怎么办?

最佳答案

如果要通过某种类型的thirdLevelIntersection创建sourceCollection,则可以使用Linq。

List<List<int>> thirdLevelIntersection =
    (from item in sourceCollection
     where !(my condition)
     select item)
    .ToList();


或者,如果您要在多个语句中建立列表,则可以在创建列表时进行操作:

thirdLevelIntersection.AddRange(
    from item in sourceCollection
    where !(my condition)
    select item);


这消除了添加项目后从列表中删除项目的必要性。

关于c# - 从列表中删除多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15672855/

10-10 05:06