如圖,聲明一個數組,引用存在棧中,new出來的對象存在堆中。
我把多維數組理解為數組中嵌套另一個數組。

下方代碼為三維數組,如果是動態賦值,只需要聲明多維數組的大小(new int[3][][]),需要,二維數組更簡單。
package cn.test;
/**
* 三維數組
* @author Administrator
*
*/
public class DemoArraysThred {
public static void main(String arg[]) {
/*三維數組*/
int[][][] arr = new int[3][][];
arr[0] = new int[3][];
arr[0][0] = new int[2];
arr[0][0][0] = 1111;
arr[0][0][1] = 1112;
arr[0][1] = new int[2];
arr[0][1][0] = 1121;
arr[0][1][1] = 1122;
arr[0][2] = new int[3];
arr[0][2][0] = 1131;
arr[0][2][1] = 1132;
arr[0][2][2] = 1133;
arr[1] = new int[3][];
arr[1][0] = new int[2];
arr[1][0][0] = 1211;
arr[1][0][1] = 1212;
arr[1][1] = new int[2];
arr[1][1][0] = 1221;
arr[1][1][1] = 1222;
arr[1][2] = new int[2];
arr[1][2][0] = 1231;
arr[1][2][1] = 1232;
arr[2] = new int[3][];
arr[2][0] = new int[2];
arr[2][0][0] = 1311;
arr[2][0][1] = 1312;
arr[2][1] = new int[2];
arr[2][1][0] = 1321;
arr[2][1][1] = 1322;
arr[2][2] = new int[2];
arr[2][2][0] = 1331;
arr[2][2][1] = 1332;
for (int[][] a2 : arr) {
for (int[] a1 : a2) {
for (int a: a1) {
System.out.print(a + "\t");
}
System.out.println();
}
}
}
}
