C#:double [] []和double [,]

Ngo*_*Van 5 c# multidimensional-array

我在C#中混淆了double [] []和double [,].
我的队友给我一个这样的功能:

public double[][] Do_Something(double[][] A)
{
     .......
}
Run Code Online (Sandbox Code Playgroud)

我想使用这个功能:

double[,] data = survey.GetSurveyData(); //Get data
double[,] inrma = Do_Something(data);
Run Code Online (Sandbox Code Playgroud)

它导致错误:无效的参数.
我不想编辑我队友的代码.
有没有办法转换double[][]double [,]

谢谢!

Sir*_*our 9

A double[][]是double [](数组数组)的数组,但是double[,]是一个二维双数组

示例:

double[] Array1 = new double[] {1,2,3};
double[] Array2 = new double[] {4,5,6};
double[][] ArrayOfArrays = new double[][] {Array1,Array2};
double[,] MultidimensionalArray = new  double[,] {{1,2}, {3,4}, {5,6}, {7,8}};   
Run Code Online (Sandbox Code Playgroud)


Mar*_*ius 8

double[][]double[,]有不同的含义.

double[][] 是锯齿状的,所以有些元素的长度可能与其他元素不同.

double[,] 是"矩形",所以所有元素都具有相同的长度.

你可以写一个方法来"转换"两者之间,但你将如何纠正这些差异呢?即你如何决定从长元素中"修剪"或扩展短元素以使其成为矩形?