我有数组在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