我必须构建一个2D数组的锯齿状数组,但出现错误“预计使用嵌套数组初始化程序”。我的代码与此类似:
double[,] a1 = new double[,] { { 1 } };
double[,] a2 = new double[,] { { 2 } };
double[,] a3 = new double[,] { { 3 } };
double[,][] b = new double[,][] { a1, a2, a3 };
为什么会出现该错误?我该如何解决这个问题?
答案 0 :(得分:2)
由二维双精度数组组成的一维数组是double[][,]
,而不是double[,][]
。对于您当前的类型,期望的是一个二维数组,而不是所提供的double的一维数组。
这就是为什么您不应该使用这种类型的原因。您可能想要具有组成二维数组的自定义类型,并具有该自定义类型的单个数组。不用迷惑自己,操作起来会容易得多。