如何根据多个条件计算列表中的项目数量?

本文关键字:项目数 列表 计算 何根 条件 | 更新日期: 2023-09-27 18:02:18

我有一个列表List<TestObj> testList

class TestObj
{
    public int type;
    public string phase; 
}
1 Phase1
1 Phase1
2 Phase1
2 Phase2

我想要得到特定类型和相位的计数。所以我尝试了

 var count = testList.Count(x=> x.type == 1 && x.phase.Equals("Phase1"));

如何根据多个条件计算列表中的项目数量?

在c#中使用==进行比较。= operator仅供分配使用。

var count = testList.Count(x=> x.type == 1 && x.phase == "Phase1");

== Operator (c# Reference)

我得到0。

你的代码甚至无法编译。

也许你正在使用==,而你有一个项目与phase="phase1"。c#是区分大小写的,你可以使用String.EqualsStringComparison.CurrentCultureIgnoreCase:

var count = testList.Count(x=> x.type == 1 && "Phase1".Equals(x.phase, StringComparison.CurrentCultureIgnoreCase));