用一维数组填充二维数组

本文关键字:二维数组 填充 一维数组 | 更新日期: 2023-09-27 18:02:23

我有10个1-D数组,假设它们的长度都是5。我如何将它们转换成一个更大的二维数组这样我只有一个有50个单元格的二维数组?我不太擅长c#,所以我不知道是否有一个简单的方法来做到这一点,或者我只需要单独分配每个索引。

用一维数组填充二维数组

//assuming 1-D arrays are setup like so.
int[] array1 = new int[5];
int[] array2 = new int[5];
...
int[] array10 = new int[5];
//Convert to 2-D array:
int[,] newarray = new int[10,5];
for (int i = 0; i < 5; i++) {
    newarray[0, i] = array1[i];
    newarray[1, i] = array2[i];
    newarray[9, i] = array10[i];
}
//using JaggedArrays
int[][] jaggedArray = new int[10][];
jaggedArray[0] = array1;
jaggedArray[1] = array2;
...
jaggedArray[9] = array10;

对于循环来说,这并不是一个很好的方法,因为你说你有10个独立的一维数组。您可以尝试将它们全部转换为单个一维数组,然后将其转换为二维数组,但根据您当前的设置,这可能是您必须要做的。

要将单个一维数组转换为二维数组,请查看此链接:

c#将1D数组转换为2D