使用LINQ合并2个数组
我有两个简单的数组,我想使用join linq进行合并:
int[] num1 = new int[] { 1, 55, 89, 43, 67, -3 }; int[] num2 = new int[] { 11, 35, 79, 23, 7, -10 }; var result = from n1 in num1 from n2 in num2 select result;
您可以使用Concat
和ToArray
执行此操作,如下所示:
var res = num1.Concat(num2).ToArray();
这将把num2
所有元素放在num1
元素之后,产生看起来像的res
int[] { 1, 55, 89, 43, 67, -3, 11, 35, 79, 23, 7, -10 };
编辑:(回应评论:“我怎样才能对allNumbers和res进行排序?”)
合并两个数组后,可以使用OrderBy
对结果进行排序,如下所示:
var res = num1.Concat(num2).OrderBy(v=>v).ToArray();
var allNumbers = num1.Concat(num2);
var result = num1.Concat(num2);
不分配任何内存。 这是否足以满足您的需求?
使用Concat
var res= num1.Concat(num2);
尝试如下……它会帮助你..
int[] num1 = new int[] { 1, 55, 89, 43, 67, -3 }; int[] num2 = new int[] { 11, 35, 79, 23, 7, -10 }; var result = num1.Union(num2).ToArray();