C# 显示两个数组中的不匹配值

C# 显示两个数组中的不匹配值,c#,arrays,visual-studio,C#,Arrays,Visual Studio,如何将每个数组中没有一对的项放入列表框的集合中 例如: 第一阵列=100 500 第二个阵列=100 200 300 500 700 800 现在,我如何将那些不匹配的值(200400600700800)显示到列表框中?您可以使用LINQ和,除了方法: int[] result = secondArray.Except(firstArray).ToArray(); yourListBox.DataSource = result; 另外,如果要在firstArray中包含不在secondArra

如何将每个数组中没有一对的项放入
列表框的集合中

例如:

第一阵列=100 500

第二个阵列=100 200 300 500 700 800


现在,我如何将那些不匹配的值
(200400600700800)
显示到
列表框中?

您可以使用LINQ和
,除了
方法:

int[] result = secondArray.Except(firstArray).ToArray();
yourListBox.DataSource = result;
另外,如果要在
firstArray
中包含不在
secondArray
中的值,请执行以下查询:

var result = firstArray.Except(secondArray).Union(secondArray.Except(firstArray)).ToArray();

您可以使用LINQ和
方法,但
方法除外:

int[] result = secondArray.Except(firstArray).ToArray();
yourListBox.DataSource = result;
另外,如果要在
firstArray
中包含不在
secondArray
中的值,请执行以下查询:

var result = firstArray.Except(secondArray).Union(secondArray.Except(firstArray)).ToArray();

HashSet
可以轻松地执行这样的set操作。去看看这本书,我相信你会有答案的。我相信您会对方法
SymmetricExceptWith

HashSet
感兴趣,它可以轻松地执行这样的设置操作。去看看这本书,我相信你会有答案的。我相信您会对SymmetricExceptWith方法感兴趣,
SymmetricExceptWith

可能不是最有效的方法,但您可以这样做

var firstArray = new int[2] {100,500};
var secondArray = new int[8] {100,200,300,400,500,600,700,800};

var x = secondArray.Except(firstArray);

foreach(var item in x)
    Console.WriteLine(item);

可能不是最有效的,但你可以做到

var firstArray = new int[2] {100,500};
var secondArray = new int[8] {100,200,300,400,500,600,700,800};

var x = secondArray.Except(firstArray);

foreach(var item in x)
    Console.WriteLine(item);

这或多或少是一个复制品

变量差异=listA.Except(listB).Union(listB.Except(listA))


这或多或少是一个复制品

变量差异=listA.Except(listB).Union(listB.Except(listA))