#9 – Колекції у Джава (Collections Framework)
Відеоурок
У мові Java можна створювати як прості масиви даних, так і динамічні масиви даних, що також називаються колекціями. Робота з простими типами масивів була розглянута в курсі основ Java. Подивитися відповідний урок можна .
Колекції в мові Java
Стандартні масиви надають лише невеликий функціонал роботи з елементами. Якщо ми захочемо додати 10 елемент до масиву, що складається з 9 елементів, то буде видана помилка. Такий підхід зовсім незручний, адже не дозволяє динамічно керувати даними в масиві.
На допомогу приходять колекції даних. У мові Java є безліч інтерфейсів для роботи з колекціями. Всі такі інтерфейси представлені нижче:

Як видно з фото, кожна колекція є саме інтерфейсом, а не класом. Основним інтерфейсом є Collection.
Ви можете створити колекцію (іншими словами: масив даних) на основі Collection або ж на основі інших інтерфейсів, що є спадкоємцями інтерфейсу Collection.
Лякатися колекцій не варто, адже колекції це лише інтерфейси, а вони у свою чергу лише набір функцій, якими ми, розробники, можемо користуватися.
Основні колекції
Крім головного інтерфейсу Collection є три інші головні формати:
- List - колекція для створення масивів даних, де індексами є числа (0, 1, 2 тощо);
- Set - теж саме що List, ось тільки в Set не можна додати елементи, що повторюються;
- Map - колекція для створення масивів даних, де індексами є ключі ("one", "2", "three", тощо).
Кожен інтерфейс має інтерфейси спадкоємці, що доповнюють функціями базовий інтерфейс. Наприклад, можна створити колекцію на базі класу List, а можна розширити її функціонал за рахунок створення колекції на базі LinkedList.
Створення об'єктів на базі різних колекцій дуже схоже. У відео уроці було розглянуто лише ArrayList і LinkedList.
Колекції безумовно зручніше, ніж масиви даних. Тим не менш, не варто зловживати ними, оскільки вони займають більше оперативної пам'яті, що може вплинути на швидкість завантаження програми.
Робота з колекціями
Для роботи з колекціями необхідно підключити інтерфейси з java.util.
При створенні колекції необхідно вказати тип даних, ім'я та виділення пам'яті:
ArrayList<Float> numbers = new ArrayList<>(1);
LinkedList<String> names = new LinkedList<>();Для роботи з елементами існує багато методів. Найчастіше використовувані представлені нижче:
add()- додавання елемента до кінця масиву;remove()- видалення елемента з масиву за його індексом;clear()- очищення всього масиву;size()- отримання розміру масиву (кількість елементів);addFirst()- додавання елемента на початок масиву;addLast()- додавання елемента до кінця;clone()- виконує клонування масиву;get()- повертає елемент за індексом;getFirst()- повертає перший елемент у масиві;getLast()- повертає останній елемент у масиві;set(index, element)– змінює значення елемента за індексом.
Вихідний код
Весь код буде доступний після підписки на проект! Завдання до уроку
Необхідно оформити передплату на проект, щоб отримати доступ до всіх домашніх завдань
Велике завдання за курсом
Вам необхідно оформити передплату на сайті, щоб мати доступ до всіх великих завдань. У завдання входить методика рішення, а також готовий проект з відповіддю до завдання.
PS: подібні завдання доступні при підписці від 1 місяця
Також варто подивитися