如何制作2D数组的2D数组

San*_*Arv 1 java arrays

我试图通过许多来源找到解决方案.但徒劳无功.我有3个2D数组对象:

double[][] W1 = new double[5][10];
double[][] W2 = new double[2][3];
double[][] W3 = new double[4][6];
Run Code Online (Sandbox Code Playgroud)

我希望另一个数组对象包含这3个数组对象.我该怎么做?

我发现可以使用以下方法将许多1D数组制作成2D阵列数组

double[][] W = new double[][]{W1, W2, W3}; //provided W1, W2, W3 are 1D arrays.
Run Code Online (Sandbox Code Playgroud)

但是我如何对2D阵列做同样的事情呢?

And*_*ner 6

一维数组被声明为double[],即[]double.

1D阵列(2D阵列)的一维阵列被声明为double[][],即[]double[].

2D阵列(一个3D阵列)的一维阵列被声明为double[][][],即[]double[][].

三维阵列(四维阵列中)的一维阵列被声明为double[][][][],即[]double[][][].

3D阵列,2D阵列的一维阵列和一维阵列的2D阵列之间没有实际区别; 或者在4D阵列,3D阵列的1D阵列和2D阵列的2D阵列之间.这纯粹是选择考虑它们的方式.

我真的想不起你为什么要使用深深嵌套的数组; 我建议你考虑是否存在更好的替代方案.