Многомерные массивы в Java — это массивы, состоящие из других массивов, что позволяет создать структуру с более чем одним измерением. Чаще всего используются двумерные массивы, которые можно представить в виде таблицы или матрицы, где есть строки и столбцы.
Двумерные массивы
Двумерный массив — это массив массивов, который часто используется для представления таблиц, сеток и матриц.
Создание двумерного массива
Общий синтаксис:
тип[][] имя_массива = new тип[количество_строк][количество_столбцов];
Например:
int[][] matrix = new int[3][3];
Этот код создаст двумерный массив matrix
размером 3x3 (3 строки и 3 столбца), заполненный нулями.
Заполнение и доступ к элементам
Элементы в двумерном массиве доступны с помощью двух индексов:
- Первый индекс — это номер строки.
- Второй индекс — это номер столбца.
Пример:
int[][] matrix = new int[3][3];
matrix[0][0] = 1; // Устанавливаем значение 1 в первую строку, первый столбец
matrix[1][1] = 2; // Устанавливаем значение 2 во вторую строку, второй столбец
matrix[2][2] = 3; // Устанавливаем значение 3 в третью строку, третий столбец
Инициализация двумерного массива с начальными значениями
Вы можете задать значения массива сразу при создании:
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
Теперь matrix
содержит:
1 2 3
4 5 6
7 8 9
Пример использования двумерного массива
Давайте выведем на экран все элементы массива matrix
:
for (int i = 0; i < matrix.length; i++) { // Проходим по строкам
for (int j = 0; j < matrix[i].length; j++) { // Проходим по столбцам
System.out.print(matrix[i][j] + " ");
}
System.out.println(); // Переход на новую строку после каждой строки массива
}
Этот код выведет:
1 2 3
4 5 6
7 8 9
Нестандартные многомерные массивы (непрямоугольные массивы)
В Java можно создавать двумерные массивы, в которых строки могут иметь разное количество столбцов. Такие массивы называются непрямоугольными массивами или рваными массивами.
Пример:
int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[2]; // Первая строка имеет 2 столбца
jaggedArray[1] = new int[3]; // Вторая строка имеет 3 столбца
jaggedArray[2] = new int[1]; // Третья строка имеет 1 столбец
// Заполняем массив значениями
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 2;
jaggedArray[1][0] = 3;
jaggedArray[1][1] = 4;
jaggedArray[1][2] = 5;
jaggedArray[2][0] = 6;
В этом случае jaggedArray
выглядит следующим образом:
1 2
3 4 5
6
Трехмерные массивы и более
Хотя они используются реже, в Java можно создавать массивы с тремя или более измерениями. Трехмерный массив можно представить как массив двумерных массивов.
Пример создания трехмерного массива:
int[][][] cube = new int[3][3][3];
Этот массив cube
имеет 3 слоя, каждый из которых представляет собой двумерный массив размером 3x3.
Пример инициализации и доступа к элементам:
cube[0][0][0] = 1; // Устанавливаем значение 1 в первую строку, первый столбец, первый слой
cube[1][1][1] = 2; // Устанавливаем значение 2 во второй строке, втором столбце, втором слое
cube[2][2][2] = 3; // Устанавливаем значение 3 в третьей строке, третьем столбце, третьем слое
Подведение итогов
- Двумерные массивы представляют собой массивы массивов и часто используются для представления таблиц и матриц.
-
- Непрямоугольные массивы позволяют создавать массивы с различным количеством столбцов в каждой строке.
- Непрямоугольные массивы позволяют создавать массивы с различным количеством столбцов в каждой строке.
-
- Трехмерные и более массивы позволяют представлять более сложные структуры данных, но используются реже.