2016-10-03 38 views
-1

我有兩個列表這樣的名單......在第一次我有一些元素,我想在第二個列表使用一個元素是不是一個元素第一使用LINQ。例如:如何使用其不在第二個List <>()

列出一個具有:1,2 列出兩種具有:1,2,3,4,5,6

所以我的輸出應爲:3,4,5,6,

+0

歡迎堆棧溢出!請[編輯]你的問題,以顯示[你有什麼到目前爲止已經試過(http://whathaveyoutried.com)。您應該包括您有,那麼我們可以嘗試以幫助特定問題的問題代碼的[MCVE。你還應該閱讀[問]。 –

回答

0

是的,你可以做到這一點與foreach循環,沒有你不應該做這種方式。 yolu應該做的是閱讀關於IEquatable並覆蓋Equals方法。這將讓你控制它排除的元素屬性。

5

您可以使用Except從第二個減去第一個列表。

var list3 = list2.Except(list1).ToList(); 
+0

,因爲我得到這個錯誤,我不能使用這樣的:不包含「除」的定義和最佳推廣方法重載「Queryable.Except ... @patrick –

+0

什麼錯誤....?在你的文件的頂部'; –

+0

添加'使用System.Linq的。 –

2

使用Except方法:

List<int> a = new List<int> { 1, 2 }; 
List<int> b = new List<int> { 1, 2, 3, 4, 5 }; 
var result = b.Except(a).ToList(); 
+0

因爲我得到這個錯誤,我不能使用這樣的:;你的文件的頂部'不包含「除」的定義和最佳推廣方法重載「Queryable.Except ... –

+0

添加'使用System.Linq的。 @JackDawson –

+0

那不是解決我的問題。有沒有辦法通過fooreach循環做到這一點? –

相關問題