JavaStart
917 subscribers
899 photos
28 videos
609 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Массивы в Java. Часть 1.

Что такое массив?

Массив — это структура данных, в которой хранятся элементы одного типа. Его можно представить, как набор пронумерованных ячеек, в каждую из которых можно поместить какие-то данные (один элемент данных в одну ячейку). Доступ к конкретной ячейке осуществляется через её номер. Номер элемента в массиве также называют индексом.

В случае с Java массив однороден, то есть во всех его ячейках будут храниться элементы одного типа. Так, массив целых чисел содержит только целые числа (например, типа int), массив строк — только строки, массив из элементов созданного нами класса Dog будет содержать только объекты Dog. То есть в Java мы не можем поместить в первую ячейку массива целое число, во вторую String, а в третью — “собаку”.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53👨‍💻21
Массивы в Java. Часть 2.

Как объявить массив?

Как и любую переменную, массив в Java нужно объявить. Сделать это можно одним из двух способов.

Они равноправны, но первый из них лучше соответствует стилю Java. Второй же — наследие языка Си (многие Си-программисты переходили на Java, и для их удобства был оставлен и альтернативный способ). В таблице приведены оба способа объявления массива в Java.

В обоих случаях dataType — тип переменных в массиве. В примерах мы объявили два массива. В одном будут храниться целые числа типа int, в другом — объекты типа Dog.

Таким образом при объявлении массива у него появляется имя и тип (тип переменных массива). arrayName — это имя массива.


👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62👨‍💻2
This media is not supported in your browser
VIEW IN TELEGRAM
Да что вы знаете о надёжных способах авторизации пользователя...

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
😁53👍2
Массивы в Java. Часть 3.

Как создать массив?

Как и любой другой объект, создать массив Java, то есть зарезервировать под него место в памяти, можно с помощью оператора new. Делается это так:

new typeOfArray [length];

Где typeOfArray – это тип массива, а length – его длина (то есть, количество ячеек), выраженная в целых числах (int).
Однако здесь мы только выделили память под массив, но не связали созданный массив ни с какой объявленной ранее переменной.

Можно массив сначала объявить, а потом создать, например:

int[] myArray; // объявление массива

myArray = new int[10]; // создание, то есть, выделение памяти для массива на 10 элементов типа int

Здесь мы объявили массив целых чисел по имени myArray, а затем сообщили, что он состоит из 10 ячеек (в каждой из которых будет храниться какое-то целое число).

Однако гораздо чаще массив создают сразу после объявления с помощью такого сокращённого синтаксиса:

int[] myArray = new int[10]; // объявление и выделение памяти “в одном флаконе”

Обратите внимание: После создания массива с помощью new, в его ячейках записаны значения по умолчанию. Для численных типов (как в нашем примере) это будет 0, для boolean – false, для ссылочных типов – null.

Таким образом, после операции

int[] myArray = new int[10];

мы получаем массив из десяти целых чисел, и, пока это не изменится в ходе программы, в каждой ячейке записан 0.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👨‍💻32
Please open Telegram to view this post
VIEW IN TELEGRAM
😁123👍2
Массивы в Java. Часть 4.

Что такое длина массива?

Как мы уже говорили выше, длина массива — это количество элементов, под которое рассчитан массив. Длину массива нельзя изменить после его создания.

В Java элементы массива нумеруются с нуля. То есть, если у нас есть массив на 10 элементов, то первый элемент массива будет иметь индекс 0, а последний — 9.

Получить доступ к длине массива можно с помощью переменной length. Пример:

int[] myArray = new int[10];
// создали массив целых чисел на 10 элементов и присвоили ему имя myArray

System.out.println(myArray.length);
// вывели в консоль длину массива, то есть количество элементов, которые мы можем поместить в массив.

Вывод программы:
10

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53👨‍💻2
Массивы в Java. Часть 5.

Инициализация массива и доступ к его элементам.

Как создать массив в Java уже понятно. После этой процедуры мы получаем не пустой массив, а массив, заполненный значениями по умолчанию. Например, в случае int это будут нули, а если у нас массив с данными ссылочного типа, то по умолчанию в каждой ячейке записано null.

Получаем доступ к элементу массива (то есть записываем в него значение или выводим его на экран или проделываем с ним какую-либо операцию) мы по его индексу.

Инициализация массива — это заполнение его конкретными данными (не по умолчанию).

Пример: давайте создадим массив из 4 сезонов и заполним его строковыми значениями — названиями этих сезонов. 

String[] seasons  = new String[4];
/* объявили и создали массив. Java выделила память под массив из 4 строк, и сейчас в каждой ячейке записано значение null (поскольку строка — ссылочный тип)*/

seasons[0] = "Winter";
/* в первую ячейку, то есть, в ячейку с нулевым номером мы записали строку Winter. Тут мы получаем доступ к нулевому элементу массива и записываем туда конкретное значение  */

seasons[1] = "Spring";
// проделываем ту же процедуру с ячейкой номер 1 (второй)

seasons[2] = "Summer";
// ...номер 2

seasons[3] = "Autumn";
// и с последней, номер 3

Теперь во всех четырёх ячейках нашего массива записаны названия сезонов. Инициализацию также можно провести по-другому, совместив с инициализацией и объявлением:

String[] seasons  = new String[] {"Winter", "Spring", "Summer", "Autumn"};

Более того, оператор new можно опустить:

String[] seasons  = {"Winter", "Spring", "Summer", "Autumn"};

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8💯21👍1
Какой тип данных всегда имеют ключи в JSON?
Anonymous Quiz
8%
Number
7%
Boolean
32%
Object
42%
String
11%
Посмотреть все
6🎉3👍2
Массивы в Java. Часть 6.

Как вывести массив на экран?

Вывести элементы массива на экран (то есть, в консоль) можно, например, с помощью цикла for.

Ещё один, более короткий способ вывода массива на экран будет рассмотрен в одном из будущих постов. А пока рассмотрим пример с циклическим выводом массива:

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43👨‍💻2
Массивы в Java. Часть 7.

Что же будет, если обратиться к элементу, которого нет в массиве? Иными словами, если у нас есть массив размером 2 элемента (элементы под индексами 0 и 1) и мы с вами хотим вывести в консоль элемент, который находится в ячейке по индексу 3.

Будет очень распространенное Java исключение - ArrayIndexOutOfBoundsException, говорящее нам о том, что запрашиваемый нами индекс находится за пределами нашего массива.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52👨‍💻2
Массивы в Java. Часть 8.

Одномерные и многомерные массивы.

А что, если мы захотим создать не массив чисел, массив строк или массив каких-то объектов, а массив массивов? Java позволяет это сделать.

Такое вряд-ли вам придется когда-нибудь использовать на работе в большом коммерческом проекте, но знать об этом нужно!
Какой-нибудь дотошный интервьюер, который любит олимпиадное программирование, может спросить на собеседовании, что это и как создаётся 😄

Уже привычный нам массив
int[] myArray = new int[8]
— так называемый одномерный массив. А массив массивов называется двумерным. Он похож на таблицу, у которой есть номер строки и номер столбца. Или, если вы учили начала линейной алгебры, — на матрицу.

Для чего нужны такие массивы? В частности, для программирования тех же матриц и таблиц, а также объектов, напоминающих их по структуре. Например, игровое поле для шахмат можно задать массивом 8х8.

Многомерный массив объявляется и создается следующим образом:

int[][] twoDimentionalArray = new int [8][8];

В этом массиве ровно 64 элемента:

twoDimentionalArray[0][0],
twoDimentionalArray[0][1],
twoDimentionalArray[1][0],
twoDimentionalArray[1][1] и так далее вплоть до twoDimentionalArray[7][7]. 

Так что если мы с его помощью представим шахматную доску, то клетку А1 будет представлять twoDimentionalArray[0][0], а E2 — twoDimentionalArray[4][1].

Где два, там и три. В Java можно задать массив массивовмассив массивов массивов и так далее. Правда, трёхмерные и более массивы используются ооочень редко. Тем не менее, с помощью трёхмерного массива можно запрограммировать, например, кубик Рубика.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🤓2👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7👍2🔥1