Многоизмерен масив Java (2d и 3d масив)

В този урок ще научим за многомерния масив Java с помощта на двумерни масиви и триизмерни масиви с помощта на примери.

Преди да научим за многомерния масив, уверете се, че знаете за масива Java.

Многомерният масив е масив от масиви. Всеки елемент от многомерен масив е самият масив. Например,

 int()() a = new int(3)(4);

Тук създадохме многомерен масив с име a. Това е двуизмерен масив, който може да побере максимум 12 елемента,

2-измерен масив

Не забравяйте, че Java използва индексиране въз основа на нула, т.е. индексирането на масиви в Java започва с 0, а не с 1.

Да вземем друг пример за многомерния масив. Този път ще създадем триизмерен масив. Например,

 String()()() data = new String(3)(4)(2);

Тук данните са 3D масив, който може да побере максимум 24 (3 * 4 * 2) елемента от типа String.

Как да инициализирам 2d масив в 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); ) )

Изход :

 Дължина на ред 1: 3 Дължина на ред 2: 4 Дължина на ред 3: 1

В горния пример създаваме многомерен масив с име a. Тъй като всеки компонент на многоизмерен масив също е масив ( a(0), a(1)и a(2)също са масиви).

Тук използваме lengthатрибута, за да изчислим дължината на всеки ред.

Пример: Отпечатайте всички елементи на 2d масив с помощта на Loop

 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 … всеки цикъл за достъп до елементи на многомерния масив. Например,

 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

В горния пример създадохме 2d масив с име a. След това използвахме forцикъл и for… eachцикъл за достъп до всеки елемент от масива.

Как да инициализирам 3d масив в Java?

Нека да видим как можем да използваме 3D масив в Java. Можем да инициализираме 3D масив, подобен на 2d масива. Например,

 // test is a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) );

По принцип 3D масивът е масив от 2d масиви. Редовете на 3D масив също могат да се различават по дължина, точно както в 2d масив.

Пример: триизмерен масив

 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

Интересни статии...