📅  最后修改于: 2023-12-03 14:52:14.664000             🧑  作者: Mango
在 C# 中,有多种方法可以合并两个没有重复值的数组。下面将介绍两种常用的方法。
使用 LINQ 的 Union
方法可以将两个数组合并为一个新数组,并自动去除重复的值。
int[] array1 = { 1, 2, 3, 4 };
int[] array2 = { 3, 4, 5, 6 };
var mergedArray = array1.Union(array2).ToArray();
上述代码中,array1
和 array2
是需要合并的两个数组,mergedArray
是合并后的结果数组。
在这个例子中,mergedArray
将包含 1, 2, 3, 4, 5, 6 这几个值,且重复的值 3 和 4 只会出现一次。
使用 HashSet
可以方便地去除重复值,并能保持元素的无序性。可以通过循环遍历将所有元素添加到 HashSet
中,然后将 HashSet
转换为数组。
int[] array1 = { 1, 2, 3, 4 };
int[] array2 = { 3, 4, 5, 6 };
HashSet<int> set = new HashSet<int>();
set.UnionWith(array1);
set.UnionWith(array2);
int[] mergedArray = set.ToArray();
在上述代码中,array1
和 array2
是需要合并的两个数组,set
是一个用于去重的 HashSet
对象,mergedArray
是合并后的结果数组。
通过 set.UnionWith(array1);
和 set.UnionWith(array2);
将 array1
和 array2
中的元素添加到 set
中,并自动去重。然后通过 set.ToArray();
将 set
转换为数组。
与方法一相同,mergedArray
将包含 1, 2, 3, 4, 5, 6 这几个值,且重复的值 3 和 4 只会出现一次。
以上就是在 C# 中合并两个没有重复值的数组的两种常用方法。可以根据具体需求选择合适的方法来解决问题。