Массивы

Массивы – это удобная структура данных, позволяющая хранить набор однотипных элементов под одним именем. Массивы широко используются для организации и обработки больших объёмов информации.

Создание и наполнение массивов

Начнём с аксиомы: количество элементов массива в Java не изменяется. Если мы создали массив с 10-ю элементами, 11 в нём уже не станет, как и 9. Для того, чтобы получить массив с 9-ю элементами, придётся создать новый и скопировать туда 9 элементов из исходного массива. Такие пироги.

В Java есть два способа объявления массивов:

Первый из них использовать в Java не стоит – это моветон, плохие манеры, беды с головой. В общем говоря – это стиль языка программирования C/C++. Но мы где? Мы в Java. Поэтому повсеместно используется второй способ – когда квадратные скобки приурочены не к имени массива, а к его типу.

Как же заполнить данными массив? Как установить, сколько в нём будет элементов? В языке Java есть три способа инициализации массива. Создадим и заполним значениями массив чисел каждым из способов:

Они все могут быть использованы и они все правильные и корректные. Отличие первого от остальных способов заключается в том, что при таком объявлении массив заполняется значениями по умолчанию от того типа, элементы которого хранятся в массиве. Раз массив хранит в себе int, а у типа данных int значение по умолчанию 0, то массив array1 заполнился пятью нулями. К примеру, у типа данных boolean значение по умолчанию false, и при таком же раскладе мы получили бы массив с пятью элементами false.

Обращение к элементам массивов

Хорошо бы уметь не только записывать данные в массивы, но и получать эти данные из массива. Делается это очень просто – по индексу. Индекс – порядковый номер элемента в массиве. Вот только программисты нумеруют не совсем так, как нормальные люди: начало нумерации идёт не с единицы, а с нуля. То есть первый элемент массива будет под индексом 0, второй – под индексом 1, третий – под 2 и так далее. Рассмотрим пример.

Мы создали массив элементов строк (String) и проинициализировали его четырьмя элементами – именами персонажей. Затем мы сумели получить записанную в массив информацию при помощи индексов элементов – от 0 до 3, и вывели имена в консоль. Неплохая работа.

Скриншот консоли IntelliJ IDEA с выводом 4 элементов массива имён персонажей Лиги Легенд

Как и в любом деле, важно знать свои лимиты. Если попробоваться схитрить и обратиться к четвёртому индексу, или, чего похуже, к минус первому, то программа быстро поставит вас на место. Попробуем заменить обращение к третьему элементу на обращение к четвёртому:

Скриншот консоли IntelliJ IDEA с выводом исключения ArrayIndexOutOfBoundsException

Да, и такое случается в жизни. Всё шло хорошо ровным счётом до того момента, пока программа не дошла до судьбоносной строки с обращением к четвёртому элементу. Когда же она попробовала его найти в массиве names, то словила исключение. Так называются ошибки во время выполнения программ. Красным текстом в консоли написано, что не по-человечески обращаться за границы массива, а индекс 4 выходит за рамки массива размером в 4 элемента.

С остальными индексами, кроме легальных (0, 1, 2, 3) в данном примере будет происходить то же самое. Индексируйте с умом!

Двумерные массивы

До этого мы рассматривали исключительно одномерные массивы. Это простая последовательность элементов, они идут друг за другом и больше никаких сложностей не предусматривается. Но размерности у массивов бывают разные. Это могут быть одномерные, двумерные и даже трёхмерные массивы. Правда, на практике трёхмерные и выше никто не использует. Поэтому углубимся в понятие двумерных массивов.

Двумерные массивы – это, по сути, матрицы. Ещё один пример двумерного массива: список точек с координатами по X, Y и Z. То есть массив массивов, где каждый элемент двумерного массива – это массив из трёх координат. Вот так выглядит объявление и инициализация двумерного массива, где показаны 4 точки, у каждой по 3 координаты (X, Y, Z):

Как видно из примера, пар квадратных скобок у него уже две, и внутри фигурных скобок со значениями тоже есть фигурные скобки. Обращаться к элементам такого массива придётся не по одному индексу, как с одномерными, а по двум:

Массивы являются важной частью программирования, облегчая работу с множеством данных одного типа. Они предоставляют инструменты для организации, обработки и передачи информации. На основе массивов могут создаваться более сложные структуры данных вроде списков, словарей и других. Массивы – это ссылочный тип, а не примитивный.

Добавить комментарий