Java ArrayList
Java ArrayList
Клас ArrayList
— це масив зі змінним розміром, який можна знайти в пакеті java.util
.
Різниця між вбудованим масивом і ArrayList
у Java полягає в тому, що розмір масиву не можна змінити (якщо ви хочете додати або видалити елементи до/з масиву, ви повинні створити новий). Хоча елементи можна додавати та видаляти з ArrayList
будь-коли. Синтаксис також дещо відрізняється:
Приклад
Створіть об’єкт ArrayList
під назвою cars, який зберігатиме рядки:
import java.util.ArrayList; // імпорт класу ArrayList
ArrayList<String> cars = new ArrayList<String>(); // Створити об’єкт ArrayList
Якщо ви не знаєте, що таке пакет, читайте розділ Java Пакети.
Додати елементи
Клас ArrayList
має багато корисних методів. Наприклад, щоб додати елементи до ArrayList
, використовуйте метод add()
:
Приклад
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
Спробуйте самі »
Доступ до елемента
Щоб отримати доступ до елемента в ArrayList
, скористайтеся методом get()
і зверніться до індексного числа:
Пам’ятайте: індекси масиву починаються з 0: [0] є першим елементом. [1] — другий елемент і т.д.
Змінити елемент
Щоб змінити елемент, скористайтеся методом set()
і зверніться до номера індексу:
Видалити елемент
Щоб видалити елемент, скористайтеся методом remove()
і зверніться до номера індексу:
Щоб видалити всі елементи в ArrayList
, скористайтеся методом clear()
:
Розмір ArrayList
Щоб дізнатися, скільки елементів містить ArrayList, скористайтеся методом size
Перебрати ArrayList
Перебирайте елементи ArrayList
за допомогою циклу for
і використовуйте метод size()
для визначення кількості разів виконання циклу:
Приклад
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (int i = 0; i < cars.size(); i++) {
System.out.println(cars.get(i));
}
}
}
Спробуйте самі »
Ви також можете перебрати ArrayList
за допомогою циклу for-each:
Приклад
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (String i : cars) {
System.out.println(i);
}
}
}
Спробуйте самі »
Інші типи
Елементи в ArrayList насправді є об’єктами. У наведених вище прикладах ми створили елементи (об’єкти) типу "String". Пам’ятайте, що рядок у Java є об’єктом (а не примітивним типом). Щоб використовувати інші типи, такі як int, ви повинні вказати еквівалентний клас оболонки: Integer
. Для інших примітивних типів використовуйте: Boolean
для boolean, Character
для char, Double
для подвійного тощо:
Приклад
Створити ArrayList
для зберігання чисел (додайте елементи типу Integer
):
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(10);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(25);
for (int i : myNumbers) {
System.out.println(i);
}
}
}
Спробуйте самі »
Сортування ArrayList
Іншим корисним класом у пакеті java.util
є клас Collections
, який включає sort()
метод для сортування списків за алфавітом або числом:
Приклад
Сортування ArrayList рядків:
import java.util.ArrayList;
import java.util.Collections; // імпорт класу Collections
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
Collections.sort(cars); // Сортування cars
for (String i : cars) {
System.out.println(i);
}
}
}
Спробуйте самі »
Приклад
Сортувати ArrayList цілих чисел:
import java.util.ArrayList;
import java.util.Collections; // Імпорт класу Collections
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);
Collections.sort(myNumbers); // Сортування myNumbers
for (int i : myNumbers) {
System.out.println(i);
}
}
}
Спробуйте самі »