5

我有一个清单,

List<bool> MyList;
MyList.Add(true);
MyList.Add(false);
MyList.Add(false);

什么是使用 linq 测试任何值是否为真的干净方法?我试过

MyList.Find(SomeBoolean=>SomeBoolean)

但结果很奇怪。

4

4 回答 4

10

尝试 :

bool test = MyList.Any(x => x);

但是你必须在插入任何东西之前初始化你的列表。

于 2013-02-07T08:01:40.730 回答
4

使用任何

var anyTrue = MyList.Any(i => i);
于 2013-02-07T08:01:56.313 回答
1

如果要列出所有true

List<bool> MyList = new List<bool>();
MyList.Add(true);
MyList.Add(false);
MyList.Add(false);
var listTrue = MyList.Where(c => c);

我想知道,您的实际情况是什么,Class因为如果您愿意,.Find结果是一样的。

var b = MyList.Find(c => c)

也许你忘了声明varor DataType

于 2013-02-07T08:28:49.880 回答
0

myList 是一个布尔列表

myList=getSelectedChannels(); 列出所有True= myList.FindAll(a => a == true);

allTrue 将是符合条件的 bool 列表(bool 为真)。现在只需说 allTrue.Count 即可获取该列表中的项目数。

于 2013-02-20T20:29:47.260 回答