Loading lessons...
Multi-Dimensional Arrays
Multi-Dimensional Arrays
A multi-dimensional array is an array of arrays. It is useful for grids and tables.
Declaring a 2D array
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
This holds two inner arrays:
| Row | Values |
|---|---|
| 0 | 1, 2, 3, 4 |
| 1 | 5, 6, 7 |
Accessing elements
The first index picks the row, the second picks the column:
System.out.println(myNumbers[1][2]); // 7
Changing an element
myNumbers[1][2] = 9;
Loop through a 2D array
Use nested loops:
for (int i = 0; i < myNumbers.length; i++) {
for (int j = 0; j < myNumbers[i].length; j++) {
System.out.println(myNumbers[i][j]);
}
}
Or use for each for both levels:
for (int[] row : myNumbers) {
for (int number : row) {
System.out.println(number);
}
}
TL;DR
- A 2D array is an array of arrays.
- Use two indexes: row then column.
- Nested loops read all the values.
- Rows can have different lengths.