C#中的数组连接

  1. 如何在C#中使用两个(或更多)其他数组巧妙地初始化数组?

    double[] d1 = new double[5]; double[] d2 = new double[3]; double[] dTotal = new double[8]; // I need this to be {d1 then d2} 
  2. 另一个问题:如何有效地连接C#数组?

你可以使用CopyTo :

 double[] d1 = new double[5]; double[] d2 = new double[3]; double[] dTotal = new double[d1.Length + d2.Length]; d1.CopyTo(dTotal, 0); d2.CopyTo(dTotal, d1.Length); 
 var dTotal = d1.Concat(d2).ToArray(); 

您可以通过先创建dTotal然后只使用Array.Copy复制两个输入来使其“更好”。

你需要调用Array.Copy ,如下所示:

 double[] d1 = new double[5]; double[] d2 = new double[3]; double[] dTotal = new double[d1.length + d2.length]; Array.Copy(d1, 0, dTotal, 0, d1.Length); Array.Copy(d2, 0, dTotal, d1.Length, d2.Length); 
 using System.Linq; int[] array1 = { 1, 3, 5 }; int[] array2 = { 0, 2, 4 }; // Concat array1 and array2. var result1 = array1.Concat(array2).ToArray();