旧列表的唯一值

本文关键字:唯一 列表 | 更新日期: 2023-09-27 17:56:45

可能的重复项:
从列表中删除子列表

我有 2 个列表:

var oldList = new List<int>(){1,2,3,4,5};
var newList = new List<int>(){1,2,3,6,7};

如何获得旧列表的唯一值(使用 LINQ)?

//hardcoded list:
var list =  new List<int>(){4,5};
//LINQ:
var list = ??

旧列表的唯一值

var unique = oldList.Except(newList);

http://msdn.microsoft.com/en-us/library/system.linq.enumerable.except.aspx

var list = oldList.Except(newList).ToList();

这意味着它将返回oldList中所有不在newList中的元素。

你的意思是旧列表中的值不在 newList 中?㞖:

var list = oldList.Except(newList);

请参阅 Enumerable。MSDN 上的除外。

如果您确实需要列表,请添加对ToList()的调用。

您可以使用

Enumerable.Except()方法。

产生两个序列的集合差。

var oldList = new List<int>() { 1, 2, 3, 4, 5 };
var newList = new List<int>() { 1, 2, 3, 6, 7 };
var value = oldList.Except(newList);
foreach (var i in value)
{
    Console.WriteLine(i);
}

这是一个DEMO.

你必须

Except方法。

var list = oldList.Except(newList);

产生两个序列的集合差。[文档]