使用LINQ获取在列表中出现一次的元素的计数
本文关键字:一次 元素 获取 LINQ 列表 使用 | 更新日期: 2023-09-27 18:07:20
是否有可能获得在LINQ列表中只出现一次的元素的整数计数,而无需创建这些值的临时列表,然后对该列表进行计数?
显然这是行不通的,但是可以这样写:
int test = list.Count(s => s.id).Where(s.id.Count() == 1);
你必须对它们和项目进行分组,计数为1的项目,然后计算组的数量:
int test = list.GroupBy(s => s.id).
.Where(g=> g.Count() == 1)
.Count();
您可以使用GroupBy()
:
int test = list.GroupBy(s => s.id).Count(g => g.Count() == 1);