c# - LINQ:返回列表中的非重复项

标签 c# linq list

如果我有这样一个列表:

List<int> test = new List<int>{1, 1, 2, 2, 3, 3, 4, 4, 5, 6 , 7 , 7 , 7};

然后使用 .Distinct() 方法:

var distinctTest = test.Distinct();

将使结果列表如下: { 1, 2, 3, 4, 5, 6, 7 }

我怎样才能像这样制作一个独特的项目列表: { 5, 6 }

最佳答案

所以你想删除所有重复的项目?

您可以使用GroupBy:

var distinctTest = test
    .GroupBy(i => i)
    .Where(g => g.Count() == 1)
    .Select(g => g.Key);

关于c# - LINQ:返回列表中的非重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24513214/

相关文章:

c# - asp.net mvc 5 SQL查询中的命名参数

c# - stringBuilder碎片化如何解决?

c# - 如何使用 linq 改进查询

Python 列表和函数,查找降雨量的最大/最小月份

python - list.reverse() 不工作

python - 复制 Pandas DF N 次

c# - 在 Windows 窗体中,是否有一个控件可以像工具提示一样显示文本覆盖,但没有所有工具提示行为?

C# Unity 3D 在碰到另一个对象时更改变量

.net - 并行 linq 中的 let 子句是否强制并行评估?

c# - 是否有更简洁的方法使用 LINQ 将项目添加到集合属性?