В JAVA можно создавать не только одномерные массивы как мы уже видели из занятия №9 но и многомерные массивы их еще называют матрицы. Индексация в таких массивах выполняется с помощью нескольких индексов. Размерность массива может быть любой, но в программировании вы редко встретите трехмерные или четырехмерные массивы итд.. , в большинстве случаев программисты используют двухмерные массивы. В нашем занятии на примере двухмерных массивом мы и разберемся. Этапы создания двухмерных массив ни чем не отличаются, и я вам их напомню.
Создание массива проходит в 3 этапа.
- Объявление переменной массива.
- Выделения в памяти места для хранения значений элементов массива.
- Присваивание переменной массива ссылки значения на массив.
Просматриваем все значения двухмерного массива
Двухмерный массив.
Создаем двухмерный массив инициализируем его при объявлении листинг 10.1
1 |
int [][]massiv={{2,5,7,8},{3,4,1,6}}; |
листинг 10.1
В листинге 10.1 мы создали двухмерный массив, с двумя строчками и четырьмя столбцами. Где каждому элементу присваивается свое значение. Что бы вам было наглядно представленный массив на рисунке 10.
рис. 10.
Из рисунка видно что любое значение имеет свою строку (синего цвета) и столбец (красного цвета). Как же работать с определенным значением? Достаточно выбрать массив и указать в квадратных скобках номер строки и номер столбца. Если вы посмотрите рисунок 10.1 вы увидите как я выбрал значение (1) из массива massiv[1][2], которое расположено в 1 строке и 2 столбце. Тут легко запутаться, но главное помнить что начало столбцов и строк начинается с 0.
рис 10.1.
Как посмотреть все элементы двух мерного массива?
Просматриваем все значения двухмерного массива.
Для того что бы посмотреть все элементы массива как вы уже знаете мы использовали цикл for, но в многомерных массивах два индекса… И для этого используют вложенный цикл for в листинг 10.1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
package myfirstprogramm; /** * @author nookery.ru */ public class MyFirstProgramm { public static void main(String[] args) { int [][]massiv={{2,5,7,8},{3,4,1,6}}; for (int i = 0; i < 2; i++) { for (int j = 0; j < 4; j++) { System.out.println(massiv[i][j]); } } } } |
листинг 10.2
В листинге 10.2 программа переберет с помощью вложенного цикла for все значения индекса и выведет их в консоль.
Домашние задание:
- Прочитать в интернете про метод пузырька, который применяется для сортировки массивов.
- Вам нужно создать проекцию матрицы, таким образом что бы в консоли было изображение как в листинге 10.3
123123456780000
листинг 10.3
3. Написать программу используя многомерный массив, таким образом что бы в консоли был вывод таким же как в листинге 10.4, не забудьте про выравнивание строк и столбцов
1 2 3 4 5 |
1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 |