从List <double []>转换为double [,]

Gra*_*ton 5 c# arrays

是否存在转换List<double[]>double[,]?的单行(无循环)?

Dir*_*mar 5

转换为double[,]只能通过遍历列表来完成,并要求列表中包含的所有数组具有相同的大小:

double[,] arr = new double[list.Count, list[0].Length];
for (int i = 0; i < list.Count; i++)
{
    for (int j = 0; j < list[0].Length; j++)
    {
        arr[i, j] = list[i][j];
    }
}
Run Code Online (Sandbox Code Playgroud)

当然,您可以double[][]通过调用.ToArray()以下命令轻松创建锯齿状数组:

double[] array = new double[] { 1.0, 2.0, 3.0 };
double[] array1 = new double[] { 4.0, 5.0, 6.0 };

List<double[]> list = new List<double[]>();
list.Add(array);
list.Add(array1);

double[][] jaggedArray = list.ToArray();
Run Code Online (Sandbox Code Playgroud)