Клас ArrayList. Динамічний масив. Загальні відомості. Створення масиву
Зміст
Пошук на інших ресурсах:
1. Перелік методів класу ArrayList
Клас ArrayList представляє собою динамічний масив. У динамічному масиві елементи додаються та видаляються за необхідності на відміну від стандартних масивів. У стандартному масиві змінити кількість елементів масиву не вдасться. Для цього потрібно створювати новий масив з новим розміром в іншій ділянці пам’яті та копіювати в нього дані вихідного стандартного масиву.
Динамічні масиви ефективні у випадках, коли на початку виконання програми не відомо розмір масиву (даних). Цей розмір формується в міру необхідності.
Клас ArrayList реалізує інтерфейс List і має наступне оголошення:
class ArrayList<E>
тут E – тип об’єктів, що зберігаються.
Перелік поширених методів класу наступний:
- add – додати елемент до масиву;
- addAll – додати набір до масиву;
- clear – очистити масив;
- clone – отримати копію масиву;
- contains – визначити, чи список містить визначений елемент;
- containsAll – визначити, чи всі елементи деякої колекції є у заданій колекції;
- ensureCapacity – зарезервувати фрагмент пам’яті для масиву;
- get – отримати елемент масиву;
- indexOf – визначити позицію першого входження елементу в масиві;
- isEmpty – визначити, чи масив пустий;
- iterator – отримати ітератор на масив;
- lastIndexOf – визначити позицію останнього входження елементу в масиві;
- listIterator – отримати ітератор у вигляді списку;
- remove – видалити елемент в заданій позиції;
- removeAll – видалити групу елементів з колекції;
- removeIf – змінити колекцію на основі предикату;
- replaceAll – виконати обчислення над кожним елементом масиву;
- retainAll – сформувати новий масив, що містить елементи заданої колекції;
- set – встановити нове значення в масиві;
- size – отримати розмір масиву;
- sort – посортувати елементи масиву в заданому порядку;
- subList – отримати фрагмент масиву на основі заданого масиву;
- toArray – конвертувати масив у масив типу Object[];
- trimToSize – скорегувати поточний розмір масиву.
⇑
2. Конструктори класу. Створення масиву. Приклад
У класі ArrayList визначені наступні конструктори:
ArrayList() ArrayList(Collection<? extends E>) ArrayList(int size)
тут
- E – тип елементів колекції;
- size – поточний розмір масиву.
Перший конструктор створює пустий динамічний масив. Другий конструктор створює динамічний масив на основі іншого масиву.
Третій конструктор створює пустий масив з зарезервованим об’ємом пам’яті розміру size. Якщо при нарощуванні, кількість елементів у такому масиві перевищить size, то зарезервований об’єм (максимальна ємність) буде збільшено на деяку величину.
Приклад. У прикладі створюються різні види динамічних масивів.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // 1. Конструктор ArrayList() // Створити пустий масив цілих чисел ArrayList<Integer> AL = new ArrayList(); // Додати до масиву числа від 0 до 9 for (int i=0; i<10; i++) AL.add(i); System.out.println(AL); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] // 2. Створити масив рядків на основі іншого масиву рядків, // конструктор ArrayList(Collection<? extends E>) // 2.1. Створити вихідний масив ArrayList<String> AS1 = new ArrayList(); AS1.add("Winter"); AS1.add("Spring"); AS1.add("Autumn"); AS1.add("Summer"); System.out.println(AS1); // [Winter, Spring, Autumn, Summer] // 2.2. Використати конструктор ArrayList(Collection<? extends E>) ArrayList<String> AS2 = new ArrayList(AS1); System.out.println(AS2); // [Winter, Spring, Autumn, Summer] // 3. Конструктор ArrayList(int) // 3.1. Створити пустий масив з зарезервованим розміром 8 елементів ArrayList<Character> AC = new ArrayList(8); // 3.2. Вивести розмір масиву System.out.println(AC.size()); // 0 - це є поточний розмір масиву } }
Результат виконання програми
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [Winter, Spring, Autumn, Summer] [Winter, Spring, Autumn, Summer] 0
⇑
Споріднені теми
- Методи, що змінюють дані в масиві. Методи add(), addAll(), clear(), remove(), removeAll(), removeIf(), replaceAll(), set(), sort()
- Методи, що визначають інформацію про елементи масиву. Методи get(), contains(), containsAll(), indexOf(), lastIndexOf(), iterator(), listIterator()
- Методи, що визначають загальні характеристики масиву. Методи ensureCapacity(), isEmpty(), size(), trimToSize()
- Методи, що перетворюють масив у цілому. Методи clone(), sublist(), toArray(), retainAll()
⇑