listOfLists是否包含至少一个包含一个或多个项目的列表?

时间:2013-07-07 18:36:04

标签: linq

如何编写此linq查询:

       List<List<string>> listOfLists = new List<List<string>>();

       listOfLists.Add(new List<string>(){"Item1", "Item2"});

       listOfLists.Add(new List<string>() { "Item2", "Item2" });


       //Does listOfLists contain at least one list that has one or more items?

1 个答案:

答案 0 :(得分:3)

听起来您正在尝试查找任何列表是否包含任何项目。有两种方法:

  • 如上所述,在两个级别使用Enumerable.Any(一次使用谓词,一次不使用):

    var any = listOfLists.Any(list => list.Any());
    
  • 只需将其展平并查看是否有任何项目,就好像至少有一个项目一样,它必须属于至少包含一个项目的列表:

    var any = listOfLists.SelectMany(list => list).Any();