Робота з масивами в Java: як його оголосити, заповнити та вивести
У камері зберігання є відсіки, які наповнюються вмістом. Ми складаємо речі у шафу на полиці або заливаємо воду у формочки для льоду. Все це схоже з роботою масивів Java. Вони міститься відразу кілька значень. Це зручно, адже щоразу не потрібно створювати окрему змінну. Без масивів важко уявити роботу з великим обсягом даних. У статті розповімо, що таке масив Java, як його оголосити і заповнити.
Більш детально про масиви в Java та інші особливості синтаксису однієї з найпопулярніших мов програмування ви можете дізнатися на курсах від ProductStar і Skypro.
- Масив у Java - що це
- Оголошення масиву в Java
- Створення масиву в Java
- Довжина масиву
- Ініціалізація масиву в Java
- Виведення масиву та цикл foreach
- Одномірні та двовимірні Java масиви
- Методи роботи з масивами
- Підсумки
Масив у Java - що це
Стандартна змінна містить лише одне значення. Масиви можуть зберігати кілька елементів одного типу. Уявити їх можна у вигляді осередків із даними — одному елементу одна осередок. При цьому кожна з них має адресу або індекс, за допомогою якого можна швидко отримати доступ. У масиви не вдасться помістити дані різного типу - наприклад, цілі числа та фрази.
У роботі з набором даних одного типу без масивів необхідно було оголошувати кожному за елемента свою змінну. А також встановлювати правила назви, щоб відрізняти їх. Це і довго, і запам'ятати такий обсяг інформації досить складно. Завдяки масивам можна уявити списки чи рядки як єдиної структури, та був працювати із нею як із єдиним цілим.Перед тим, як розпочинати роботу з масивом, його, як і інші змінні, необхідно оголосити.
Оголошення масиву в Java
Ми оголошуватимемо змінну, яка допоможе звертатися до потрібного осередку, вказуючи її індекс (порядковий номер). У Java це виглядає так:
На першому місці розташовується тип змінних у масиві, дужки обов'язково повинні бути квадратними, а пропуск перед ними не ставиться. Тип масиву може бути будь-яким (Integer, String, Date). Одна пара дужок свідчить про те, що змінна варта одномірного масиву. Іноді дужки розміщуються інакше:
int [] myArray1 - з пробілом
int myArray1[] - після назви змінної.
Другий варіант прийшов із мови С, але його застосовують набагато рідше. Якщо ви пишете код, краще використовувати звичний спосіб і не змінити його протягом усієї роботи. Зазвичай назва змінної вказується у множині. Це може бути іменник (apples, horses, cars), прикметник або займенник. У прикладі вище ми використовували загальне позначення array, яке означає множину. Краще давати масивам точніші назви, щоб точно розуміти, що знаходиться всередині. Наприклад, players чи students. Масив також може зберігати в собі типи посилань даних.
На курсі «Java-розробник з нуля» спочатку вивчають типи даних Java, а потім одномірні та багатовимірні масиви. Навчання на 80 відсотків складається з практики - так розібратися в синтаксисі набагато простіше.
Створення масиву в Java
Після того, як ми оголосили масив, можна переходити до його створення. Тут ми повинні повідомити компілятор розмір об'єкта. Адже з його погляду масив є об'єктом. Для створення ми використовуємо слово new.
int[ ] students = new int[7]
Ми оголосили масив цілих чисел з ім'ям students і повідомили, що в нього входять 7 осередків. У кожному з них буде певне число.
students = new int[7]
Довжина масиву
У кожного елемента в масиві є свій індекс. Загальна довжина може бути як позитивною, так і нульовою. Якщо наш масив складається з 7 елементів, то у першого буде індекс 0, а у останнього — 6. Довжина допоможе взнати змінна length:
int[ ] students = new int[7]; створення масиву на 7 елементів під назвою students
System.out.println(student.length); - Висновок довжини масиву.
Розглянемо ще кілька прикладів, щоб розібратися з довжиною та номером кожного з елементів масиву.
int[ ] array1 = - у цифри 1 буде індекс 0, у 4 буде 2, у 8 - 3
string[ ] array2 = «Hot», «cold»>— перше слово має індекс 0, а друге - 1
Ініціалізація масиву в Java
Для запуску масиву необхідно заповнити його значеннями або ініціалізувати.
Швидка ініціалізація
String[ ] colors = new String[ ]
або без new
Зручний варіант для випадків, коли відомо, які значення будуть перебувати в масиві. де і знаходиться цей об'єкт. Найчастіше такий спосіб ініціалізації застосовують, коли кількість значень невелика і ви знаєте їх заздалегідь.
Крім курсів Java-розробки на сайті tutortop є й інші варіанти для майбутніх або практикуючих програмістів. Наприклад, навчання з веб-розробки або курс для новачків С++.
Ініціалізація за індексом
Як пам'ятаєте, нумерація значень починається з нуля. А довжина масиву length — 1. Так відбувається тому, що довжина масиву завжди на одну одиницю більша за останній індекс — адже вважати починаємо з 0. Приклад:
int[] numbers = new int[2];
Тут ми вручну вказали значення кожного елемента масиву. У прикладі це цифри 5 і 8. Потім вони зважали на нього і розмістилися в змінних a і b. Так масив може бути гнучкішим, якщо ініціалізація здійснюється в різних місцях програми, коли поставлено таке завдання.
Цикл
Робота з масивом не завжди вручну підходить для ініціалізації. Код стає масивнішим, а часу йде більше. Для автоматизації процесу застосовують цикли. Щоб використовувати цикл, необхідно знати первинне значення індексу, довжину масиву, кінцеве значення індексу. Для масивів найбільше підходить цикл for. Тип даних у разі може бути int, short, byte чи char.
Ще один приклад з оцінками:
System.out.printf(«%s отримує оцінку %d%n», names[i], marks[i]);
Коля отримує оцінку 3
Аріна отримує оцінку 5
Маша отримує оцінку 4
int[] numbers = new int[4];
Виведення масиву та цикл foreach
Вивести цикл можна за допомогою описаного вище циклу for. Але є його спрощена версія під назвою foreach. У ньому є дві секції, які відокремлюються двокрапкою. Праворуч буде назва масиву, зліва - змінна типу, схожого з елементами.За стандартом кожен із елементів береться з масиву і переноситься в змінну, поступово вони виводяться з етапом проходження циклу. По суті він відрізняється зовні, але для виконуючої машини вони однакові.
foreach
for (String color: colors)
Завдяки другому варіанту можна отримати доступ до елементів. краще застосовувати for.
for (int element : array)
Одномірні та двовимірні Java масиви
Масив — це об'єкт. Ми можемо оголосити його як змінну.
Оголосимо двовимірний масив:
int[ ][ ] two = new int[3][4]
Надамо значення індексам:
int[][] two = new int[3][4];
Двовимірний масив може виглядати і так:
У чому плюс двовимірних масивів? Розглянемо на прикладі. Допустимо, нам потрібно знайти середнє арифметичне оцінок по шкільних предметах. Достатньо пройтися по елементах, додаючи 2 цикли for. циклів for для виведення двовимірного масиву:
Хочете стати backend-розробником, але не знаєте, з чого почати?
Отримайте промокод 10 000 ₽ на навчання та курси вартістю 20 000 ₽ у подарунок!
Натискаючи кнопку «Отримати», я погоджуюсь на обробку моїх персональних даних.
Дякую! Ми отримали вашу заявку.
Методи роботи з масивами
Розглянемо кілька методів та способів, які полегшать роботу з масивами.
Сортування
Якщо потрібно відсортувати елементи у порядку зростання, використовуйте Arrays.sort(a). В інших випадках допоможе Arrays.sort(a, Comparator c), друга складова частина порівнює два елементи, що стоять поруч.
System.out.println( Arrays.toString( mynumbers ) )
Наповнення
Для заповнення масивами однаковими елементами необов'язково писати цикл, вам знадобиться Arrays.fill(a, val). Він розгляне елементи масиву a і надасть значення val.
int[] mynumbers = new int[8];
Arrays.fill (mynumbers, 5);
System.out.println( Arrays.toString( mynumbers ) )
Чітні та непарні елементи
Якщо потрібно окремо вивести парні цифри, наслідуйте приклад:
System.out.print(«парні елементи масиву myNumbers: «);
Парні елементи масиву myNumbers: 2.0,18.0
System.out.print(«Непарні елементи масиву myNumbers: «);
Парні елементи масиву myNumbers: 2.9, 3, 25.9
Сума всіх елементів
Приклад розрахунку суми елементів масиву Java:
System.out.println(«Сума елементів масиву myNumbers: » + total)
Сума елементів масиву myNumbers: 53
з циклом foreach:
for(double element : myNumbers)
System.out.println(«Сума масиву myNumbers: » + total)
Сума масиву myNumbers: 53
Підсумки
- Масив складається з однотипних елементів, що розташовуються один за одним. Доступ до кожного з елементів можна отримати за допомогою індексу.
- Довжина масиву не змінюється після створення.
- Java елементи в масивах нумеруються з нуля.
- Можна створювати масиви, елементами яких будуть інші масиви. Їх називають багатовимірними.
- У Java є безліч зручних методів для роботи з масивами, які роблять процес написання коду ще зручнішим.
Вибирайте підходящий для себе курс на сайті tutortop.Для вас ми сформували окрему добірку найкращих онлайн-курсів на ринку та порівняли їх за багатьма показниками.
Як створити масив чисел у Java?
Масив представляє набір однотипних значень. Оголошення масиву схоже на оголошення звичайної змінної, яка зберігає одиночне значення, причому є два способи оголошення масиву:
тип_даних назва_масиву[]; // або тип_даних[] назва_масиву;
Наприклад, визначимо масив чисел:
int nums []; int[] nums2;
Після оголошення масиву ми можемо його ініціалізувати:
int nums []; nums = New int [4]; // масив із 4 чисел
Створення масиву здійснюється за допомогою наступної конструкції: new тип_даних[кількість_елементів] , де new - ключове слово, що виділяє пам'ять для вказаної в дужках кількості елементів. Наприклад, nums = new int [4]; - у цьому виразі створюється масив із чотирьох елементів int, і кожен елемент матиме значення за умовчанням - число 0.
Також можна відразу при оголошенні масиву ініціалізувати його:
int nums[] = new int[4]; // масив із 4 чисел int[] nums2 = new int[5]; // масив із 5 чисел
За такої ініціалізації всі елементи масиву мають значення за замовчуванням. Для числових типів (зокрема для типу char) це число 0, типу boolean це значення false , а інших об'єктів це значення null . Наприклад, для типу int значенням за умовчанням є число 0, тому вище певний масив nums буде складатися з чотирьох нулів.
Однак також можна задати конкретні значення елементів масиву при його створенні:
// ці два способи рівноцінні int[] nums = new int[] <1, 2, 3, 5>; int[] nums2 = <1, 2, 3, 5>;
У цьому випадку у квадратних дужках не вказується розмір масиву, оскільки він обчислюється за кількістю елементів у фігурних дужках.
Після створення масиву ми можемо звернутися до будь-якого його елемента за індексом, який передається у квадратних дужках після назви змінної масиву:
int[] nums = new int[4]; // встановлюємо значення елементів масиву nums [0] = 1; nums[1] = 2; nums[2] = 4; nums[3] = 100; // Отримуємо значення третього елемента масиву System.out.println(nums[2]); // 4
Індексація елементів масиву починається з 0, тому в даному випадку, щоб звернутися до четвертого елементу в масиві, нам потрібно використовувати вираз nums [3].
І оскільки у нас масив визначено лише 4 елементів, ми можемо звернутися, наприклад, до шостому елементу: nums[5] = 5; . Якщо так спробуємо зробити, ми отримаємо помилку.
Довжина масиву
Найважливіша властивість, якою мають масиви, є властивість length , що повертає довжину масиву, тобто кількість його елементів:
int[] nums =; int length = nums.length; // 5
Нерідко буває невідомим останній індекс, і щоб отримати останній елемент масиву, ми можемо використовувати цю властивість:
int last = nums [nums.length-1];
Багатовимірні масиви
Раніше ми розглядали одновимірні масиви, які можна подати як ланцюжок або рядок однотипних значень. Але крім одновимірних масивів також бувають багатовимірними. Найбільш відомий багатовимірний масив - таблиця, що представляє двовимірний масив:
int[] nums1 = new int[] < 0, 1, 2, 3, 4, 5 >; int[][] nums2 = < < 0, 1, 2 >, < 3, 4, 5 >>;
Візуально обидва масиви можна представити так: