我有數組在C#如何找出C#中兩個數組中的不同元素?
int array1 = new int[]{1,2,3,3,4,5};
,我有兩個問題:
- 我不知道如何刪除數組重複的元素。
- 當我比較array1與array3
{1,2,3,4,5,6,7,8,9,10}
,有多少元素消失,它們是什麼數字?
我不知道要做到這一點!
我有數組在C#如何找出C#中兩個數組中的不同元素?
int array1 = new int[]{1,2,3,3,4,5};
,我有兩個問題:
{1,2,3,4,5,6,7,8,9,10}
,有多少元素消失,它們是什麼數字?我不知道要做到這一點!
首先,它應該是
int[] array1 = new int[]{1,2,3,3,4,5};
要刪除所有重複的條目做
using System.Linq;
var result = array1.Distinct().ToArray();
要看到這是在陣列1的元素,而不是在ARRAY3
要查看元素它們在array3中而不在array1中
var result = array3.Except(array1).ToArray();
非常感謝親! – 2013-04-27 10:26:35
我想補充一點,如果你真的需要這個數組來處理別的東西,那麼'ToArray'就是必須的。 'Distinct'和'Except'返回的'IEnumerable'通常就足夠了。 – JulianR 2013-04-27 01:23:24
@JulianR:我們這樣做是爲了即時計算,而不是在LINQ中延遲/延遲加載。 – 2013-04-27 01:25:36