Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LINQ:返回列表中的非重复项_C#_Linq_List - Fatal编程技术网

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

C# LINQ:返回列表中的非重复项,c#,linq,list,C#,Linq,List,如果我有这样一个列表: List<int> test = new List<int>{1, 1, 2, 2, 3, 3, 4, 4, 5, 6 , 7 , 7 , 7}; 将使结果列表如下所示: {1,2,3,4,5,6,7} 如何创建一个独特的项目列表,如下所示: {5,6}那么您想删除所有重复项吗 您可以使用GroupBy: var distinctTest = test .GroupBy(i => i) .Where(g => g.Co

如果我有这样一个列表:

List<int> test = new List<int>{1, 1, 2, 2, 3, 3, 4, 4, 5, 6 , 7 , 7 , 7};
将使结果列表如下所示: {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);
这将返回一个值序列(IEnumerable)——每个唯一值一个。

List numberList=new List(){3,3,3,4,5,5,7,7,9,9};
List<int> numberList = new List<int>() { 3, 3, 3, 4, 5, 5, 7, 7, 9, 9 };

        foreach (var x in numberList
            .GroupBy(i => i)
            .Where(g => g.Count() == 1)
            .Select(g => g.Key))
        {
            Console.WriteLine(x.ToString());// outputs 4
        }
foreach(数值列表中的变量x .GroupBy(i=>i) .其中(g=>g.Count()==1) .选择(g=>g.Key)) { Console.WriteLine(x.ToString());//输出4 }
List numberList=newlist(){3,3,4,5,5,7,7,9};
var distinctTest=numberList
.GroupBy(i=>i)
.其中(g=>g.Count()==1)
.选择(g=>g.Key);
foreach(distinctTest中的变量项)
{
控制台写入线(项目);
}

我确定这一定是重复的,但我不能很快找到它
test.GroupBy(x=>x).Where(g=>g.Count()==1).选择(g=>g.Key)
谢谢,这对我帮助很大。你似乎误解了这个问题-OP已经说过他们不想要这个了。不确定是谁对此投了赞成票-这是错误的。请您对您的答案进行解释。请提供一些意见,说明为什么您的解决方案优于公认的答案。
test.Select(x => x).Distinct();
List<int> numberList = new List<int>() { 3, 3, 3, 4, 5, 5, 7, 7, 9, 9 };

        foreach (var x in numberList
            .GroupBy(i => i)
            .Where(g => g.Count() == 1)
            .Select(g => g.Key))
        {
            Console.WriteLine(x.ToString());// outputs 4
        }
List<int> numberList = new List<int>() { 3, 3, 3, 4, 5, 5, 7, 7, 9, 9 };
 var distinctTest = numberList 
                .GroupBy(i => i)
                .Where(g => g.Count() == 1)
                .Select(g => g.Key);

foreach (var item in distinctTest)
{
    Console.WriteLine(item);
}