According to the Java language specification, ยง15.10.2. Estimating the creation time of expressions for creating arrays , Example 15.10.2-2. Creating a multidimensional array :
Announcement:
float[][] matrix = new float[3][3];
equivalent to behavior:
float[][] matrix = new float[3][];
for (int d = 0; d < matrix.length; d++)
matrix[d] = new float[3];
That means your code:
int[][] arr = new int[2][2];
arr[0] = new int[]{1,2};
arr[1] = new int[]{3,4,5};
Same as:
int[][] arr = new int[2][];
for (int d = 0; d < arr.length; d++)
arr[d] = new int[2];
arr[0] = new int[]{1,2};
arr[1] = new int[]{3,4,5};
Or:
int[][] arr = new int[2][];
arr[0] = new int[2];
arr[1] = new int[2];
arr[0] = new int[]{1,2};
arr[1] = new int[]{3,4,5};
, , 2D-.
, , :
int[][] arr = new int[2][];
arr[0] = new int[]{1,2};
arr[1] = new int[]{3,4,5};
, GC, .