HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p><strong>Массив</strong>- набор определённого числа однотипных элементов. Использование массива позволяет нам не создавать большое количество переменных, а создать всего лишь одну переменную, имеющую вид массива. В отличие от стандартных переменных массивы содержат больше, чем одно значение. В программировании это очень важно, ведь при разработке софта может потребоваться огромное количество данных.</p>
1 <p><strong>Массив</strong>- набор определённого числа однотипных элементов. Использование массива позволяет нам не создавать большое количество переменных, а создать всего лишь одну переменную, имеющую вид массива. В отличие от стандартных переменных массивы содержат больше, чем одно значение. В программировании это очень важно, ведь при разработке софта может потребоваться огромное количество данных.</p>
2 <p>Лучшая ассоциация для массива - стена с почтовыми ячейками. Каждая ячейка помечена квартирными номерами (<strong>индексы массива</strong>), внутри лежат газеты и письма (<strong>элементы массива</strong>), а получить содержимое можно, открыв ящик ключом (обратиться к содержимому по позиции элемента в массиве через индекс). При этом содержимое массива может включать в себя как простые данные (это одномерный массив), так и несколько вложенных массивов (это многомерный массив).</p>
2 <p>Лучшая ассоциация для массива - стена с почтовыми ячейками. Каждая ячейка помечена квартирными номерами (<strong>индексы массива</strong>), внутри лежат газеты и письма (<strong>элементы массива</strong>), а получить содержимое можно, открыв ящик ключом (обратиться к содержимому по позиции элемента в массиве через индекс). При этом содержимое массива может включать в себя как простые данные (это одномерный массив), так и несколько вложенных массивов (это многомерный массив).</p>
3 <p>Массив однороден, и во всех ячейках должны храниться элементы одного типа. Если это<strong>int</strong>, то мы говорим про массив целых чисел, который может содержать лишь целые числа. Массив строк будет содержать лишь строки, а массив, состоящий из элементов созданного класса Dog, может содержать лишь объекты Dog.</p>
3 <p>Массив однороден, и во всех ячейках должны храниться элементы одного типа. Если это<strong>int</strong>, то мы говорим про массив целых чисел, который может содержать лишь целые числа. Массив строк будет содержать лишь строки, а массив, состоящий из элементов созданного класса Dog, может содержать лишь объекты Dog.</p>
4 <h2>Как происходит объявление массива в Java</h2>
4 <h2>Как происходит объявление массива в Java</h2>
5 <p>Как и любую переменную в Java, массив надо объявить. Для этого есть два способа. Первый больше отвечает стилю Java, второй является наследием языка C.</p>
5 <p>Как и любую переменную в Java, массив надо объявить. Для этого есть два способа. Первый больше отвечает стилю Java, второй является наследием языка C.</p>
6 <p>Вне зависимости от способа,<strong>dataType</strong>- это тип переменных в массиве. Посмотрите внимательно на примеры - в них объявлены 2 массива. Один предназначен для целых чисел типа int, другой - для объектов типа Object.</p>
6 <p>Вне зависимости от способа,<strong>dataType</strong>- это тип переменных в массиве. Посмотрите внимательно на примеры - в них объявлены 2 массива. Один предназначен для целых чисел типа int, другой - для объектов типа Object.</p>
7 <p>Можно сказать, что во время объявления массива ему присваивается как имя (ArrayName), так и тип переменных.</p>
7 <p>Можно сказать, что во время объявления массива ему присваивается как имя (ArrayName), так и тип переменных.</p>
8 <h2>Создание массива</h2>
8 <h2>Создание массива</h2>
9 <p>Чтобы создать массив в Java, нужно зарезервировать место в памяти, для чего используем оператор new:</p>
9 <p>Чтобы создать массив в Java, нужно зарезервировать место в памяти, для чего используем оператор new:</p>
10 new typeOfArray [length];<p>Здесь у нас typeOfArray - тип массива,<strong>length</strong>- длина массива или число ячеек, выраженное в целых числах (int). Но мы лишь выделили память под массив, не связав его ни с какой переменной, ранее объявленной. Как правило, сначала массив объявляют, потом создают:</p>
10 new typeOfArray [length];<p>Здесь у нас typeOfArray - тип массива,<strong>length</strong>- длина массива или число ячеек, выраженное в целых числах (int). Но мы лишь выделили память под массив, не связав его ни с какой переменной, ранее объявленной. Как правило, сначала массив объявляют, потом создают:</p>
11 int[] myArray; // объявление массива myArray = new int[10]; // создание массива, выделение памяти на 10 элементов типа int<p>Итак, объявлен массив из целых чисел с именем myArray. После объявления мы сообщили, что массив состоит из 10 ячеек. Но можно использовать и более сокращённый синтаксис:</p>
11 int[] myArray; // объявление массива myArray = new int[10]; // создание массива, выделение памяти на 10 элементов типа int<p>Итак, объявлен массив из целых чисел с именем myArray. После объявления мы сообщили, что массив состоит из 10 ячеек. Но можно использовать и более сокращённый синтаксис:</p>
12 int[] myArray = new int[10]; // объявление и выделение памяти за один раз<p>Что же, мы создали массив с помощью new. После этого в его ячейках будут записаны значения по умолчанию. Например, для численных типов - это нули (0), для boolean - false, а если говорить о ссылочных типах, то null. Это значит, что после выполнения кода</p>
12 int[] myArray = new int[10]; // объявление и выделение памяти за один раз<p>Что же, мы создали массив с помощью new. После этого в его ячейках будут записаны значения по умолчанию. Например, для численных типов - это нули (0), для boolean - false, а если говорить о ссылочных типах, то null. Это значит, что после выполнения кода</p>
13 int[] myArray = new int[10];<p>у нас на выходе будет массив из 10 целых чисел, причём в каждой ячейке будет записан 0.</p>
13 int[] myArray = new int[10];<p>у нас на выходе будет массив из 10 целых чисел, причём в каждой ячейке будет записан 0.</p>
14 <h2>Длина массива length</h2>
14 <h2>Длина массива length</h2>
15 <p>Длина массива - число элементов, под которое этот массив рассчитан. Длину массива изменить после создания нельзя.</p>
15 <p>Длина массива - число элементов, под которое этот массив рассчитан. Длину массива изменить после создания нельзя.</p>
16 <p>Ещё нюанс: элементы массива в Java нумеруются с нуля. Таким образом, массив на 10 элементов состоит из чисел в диапазоне 0-9.</p>
16 <p>Ещё нюанс: элементы массива в Java нумеруются с нуля. Таким образом, массив на 10 элементов состоит из чисел в диапазоне 0-9.</p>
17 <p>Если нужно получить доступ к длине нашего массива, используют переменную length:</p>
17 <p>Если нужно получить доступ к длине нашего массива, используют переменную length:</p>
18 int[] myArray = new int[10]; // создали массив, присвоили имя myArray System.out.println(myArray.length); // вывели в консоль длину массива<h2>Инициализация массива</h2>
18 int[] myArray = new int[10]; // создали массив, присвоили имя myArray System.out.println(myArray.length); // вывели в консоль длину массива<h2>Инициализация массива</h2>
19 <p>Инициализация - это заполнение массива конкретными данными, а не данными по умолчанию.</p>
19 <p>Инициализация - это заполнение массива конкретными данными, а не данными по умолчанию.</p>
20 <p>Нижеследующий код позволит создать массив, включающий в себя 4 сезона года. Также мы выполним заполнение массива строками-названиями сезонов:</p>
20 <p>Нижеследующий код позволит создать массив, включающий в себя 4 сезона года. Также мы выполним заполнение массива строками-названиями сезонов:</p>
21 String[] seasons = new String[4]; /* выполнили объявление и создание массива из 4 строк, где по умолчанию записано null, ведь строка - ссылочный тип данных*/ seasons[0] = "Winter"; /* в первую ячейку записали строку Winter*/ seasons[1] = "Spring"; /* во вторую ячейку (номер 1) записали строку Spring и т. д.*/ seasons[2] = "Summer"; seasons[3] = "Autumn";<p>Так мы записали названия всех сезонов. Но в принципе можно всё сделать проще,<strong>совместив инициализацию и объявление</strong>:</p>
21 String[] seasons = new String[4]; /* выполнили объявление и создание массива из 4 строк, где по умолчанию записано null, ведь строка - ссылочный тип данных*/ seasons[0] = "Winter"; /* в первую ячейку записали строку Winter*/ seasons[1] = "Spring"; /* во вторую ячейку (номер 1) записали строку Spring и т. д.*/ seasons[2] = "Summer"; seasons[3] = "Autumn";<p>Так мы записали названия всех сезонов. Но в принципе можно всё сделать проще,<strong>совместив инициализацию и объявление</strong>:</p>
22 String[] seasons = new String[] {"Winter", "Spring", "Summer", "Autumn"};<p>Или даже так, опустив оператор new:</p>
22 String[] seasons = new String[] {"Winter", "Spring", "Summer", "Autumn"};<p>Или даже так, опустив оператор new:</p>
23 String[] seasons = {"Winter", "Spring", "Summer", "Autumn"};<h2>Динамический массив в Java</h2>
23 String[] seasons = {"Winter", "Spring", "Summer", "Autumn"};<h2>Динамический массив в Java</h2>
24 <p>Минус массива - статичность, то есть необходимость задавать размер заранее. Для этого и придумали<strong>динамический массив</strong>, который может менять размер в процессе выполнения программы. Например, статические массивы работают по следующей схеме:</p>
24 <p>Минус массива - статичность, то есть необходимость задавать размер заранее. Для этого и придумали<strong>динамический массив</strong>, который может менять размер в процессе выполнения программы. Например, статические массивы работают по следующей схеме:</p>
25 <p>А динамические массивы в Java функционируют несколько иначе:</p>
25 <p>А динамические массивы в Java функционируют несколько иначе:</p>
26 <p>Так как для копирования массива используется специальная нативная функция, проблем с "переездом" не возникает.</p>
26 <p>Так как для копирования массива используется специальная нативная функция, проблем с "переездом" не возникает.</p>
27 <p>В общем, как вы уже догадались, динамические массивы применяются во время обработки наборов однородных данных, размер которых на момент написания программы нам неизвестен.</p>
27 <p>В общем, как вы уже догадались, динамические массивы применяются во время обработки наборов однородных данных, размер которых на момент написания программы нам неизвестен.</p>
28  
28