我有一个通用列表。它有一个ListfilesToProcess.Count属性,它返回项目的总数,但我想用条件语句计算列表中的某些项目数。
我这样做:
int c = 0;
foreach (FilesToProcessDataModels item in ListfilesToProcess)
{
if (item.IsChecked == true)
c++;
}
是否有更短的方式,如 int c = ListfilesToProcess.count(item => item.IsChecked == true);
答案 0 :(得分:15)
是的,使用LINQ的Count
方法和overload taking a predicate:
int count = ListFilesToProcess.Count(item => item.IsChecked);
一般来说,每当你想要摆脱循环(或简化循环)时,你应该看看LINQ。