Многомерные массивы Java
Многомерные массивы Java
В этом руководстве мы узнаем о многомерном массиве Java, используя двумерные массивы и трехмерные массивы с помощью примеров.
Прежде чем мы узнаем о многомерных массивах, убедитесь, что вы знаете о массивах Java.
Многомерный массив — это массив массивов. Каждый элемент многомерного массива сам является массивом. Например,
int[][] a = new int[3][4];
Здесь мы создали многомерный массив с именем a. . Это двумерный массив, который может содержать максимум 12 элементов,
<рисунок>
Помните, что в Java используется индексация с отсчетом от нуля, то есть индексация массивов в Java начинается с 0, а не с 1.
Возьмем другой пример многомерного массива. На этот раз мы будем создавать трехмерный массив. Например,
String[][][] data = new String[3][4][2];
Здесь данные представляет собой трехмерный массив, который может содержать максимум 24 (3*4*2) элемента типа String
.
Как инициализировать двумерный массив в Java?
Вот как мы можем инициализировать двумерный массив в Java.
int[][] a = {
{1, 2, 3},
{4, 5, 6, 9},
{7},
};
Как мы видим, каждый элемент многомерного массива сам по себе является массивом. А также, в отличие от C/C++, каждая строка многомерного массива в Java может быть разной длины.
<рисунок>
Пример:двумерный массив
class MultidimensionalArray {
public static void main(String[] args) {
// create a 2d array
int[][] a = {
{1, 2, 3},
{4, 5, 6, 9},
{7},
};
// calculate the length of each row
System.out.println("Length of row 1: " + a[0].length);
System.out.println("Length of row 2: " + a[1].length);
System.out.println("Length of row 3: " + a[2].length);
}
}
Вывод :
Length of row 1: 3 Length of row 2: 4 Length of row 3: 1
В приведенном выше примере мы создаем многомерный массив с именем a. . Поскольку каждый компонент многомерного массива также является массивом (a[0]
, a[1]
и a[2]
также являются массивами).
Здесь мы используем length
атрибут для вычисления длины каждой строки.
Пример. Печать всех элементов двумерного массива с использованием цикла
class MultidimensionalArray {
public static void main(String[] args) {
int[][] a = {
{1, -2, 3},
{-4, -5, 6, 9},
{7},
};
for (int i = 0; i < a.length; ++i) {
for(int j = 0; j < a[i].length; ++j) {
System.out.println(a[i][j]);
}
}
}
}
Вывод :
1 -2 3 -4 -5 6 9 7
Мы также можем использовать цикл for...each для доступа к элементам многомерного массива. Например,
class MultidimensionalArray {
public static void main(String[] args) {
// create a 2d array
int[][] a = {
{1, -2, 3},
{-4, -5, 6, 9},
{7},
};
// first for...each loop access the individual array
// inside the 2d array
for (int[] innerArray: a) {
// second for...each loop access each element inside the row
for(int data: innerArray) {
System.out.println(data);
}
}
}
}
Вывод :
1 -2 3 -4 -5 6 9 7
В приведенном выше примере мы создали двумерный массив с именем a. . Затем мы использовали for
цикл и for...each
цикл для доступа к каждому элементу массива.
Как инициализировать трехмерный массив в Java?
Давайте посмотрим, как мы можем использовать трехмерный массив в Java. Мы можем инициализировать 3D-массив аналогично 2D-массиву. Например,
// test is a 3d array
int[][][] test = {
{
{1, -2, 3},
{2, 3, 4}
},
{
{-4, -5, 6, 9},
{1},
{2, 3}
}
};
По сути, трехмерный массив представляет собой массив двумерных массивов. Строки трехмерного массива также могут различаться по длине, как и в двухмерном массиве.
<час>Пример:трехмерный массив
class ThreeArray {
public static void main(String[] args) {
// create a 3d array
int[][][] test = {
{
{1, -2, 3},
{2, 3, 4}
},
{
{-4, -5, 6, 9},
{1},
{2, 3}
}
};
// for..each loop to iterate through elements of 3d array
for (int[][] array2D: test) {
for (int[] array1D: array2D) {
for(int item: array1D) {
System.out.println(item);
}
}
}
}
}
Вывод :
1 -2 3 2 3 4 -4 -5 6 9 1 2 3
java
- С# Массивы
- Операторы Java
- Массивы копирования Java
- Java-интерфейс
- Java-проба с ресурсами
- Java-аннотации
- Массивы в C++ | Объявить | Инициализировать | Указатель на примеры массивов
- C++ динамическое выделение массивов с примером
- Учебное пособие по массивам Java:объявление, создание, инициализация [пример]
- Как создать массив объектов в Java