Список ArrayList в Java

ArrayList в Java: динамический список, добавление и удаление элементов, доступ по индексу, перебор и обобщения.

ArrayList — это список, который автоматически меняет размер. В отличие от массива, в него можно добавлять и удалять элементы во время работы программы.

Создание и обобщения

Тип элементов указывают в угловых скобках — это обобщения (generics). Они гарантируют, что в списке окажутся только значения нужного типа.

import java.util.ArrayList;

ArrayList<String> names = new ArrayList<>();   // список строк
names.add("Аня");
names.add("Боря");
names.add("Вика");

System.out.println(names);
System.out.println(names.size());     // 3

Вывод:

[Аня, Боря, Вика]
3

В коллекциях используют классы-обёртки, а не примитивы: ArrayList<Integer>, а не <int>. Java сама упакует число в Integer.

Основные методы

Метод

Действие

add(x)

добавить элемент в конец

get(i)

получить элемент по индексу

set(i, x)

заменить элемент

remove(i)

удалить по индексу

size()

количество элементов

contains(x)

содержит ли элемент

ArrayList<Integer> nums = new ArrayList<>();
nums.add(10);
nums.add(20);
nums.add(30);

System.out.println(nums.get(1));      // 20
nums.set(1, 99);                       // заменили
nums.remove(0);                        // удалили первый

System.out.println(nums);

Вывод:

20
[99, 30]

Перебор

Список удобно перебирать циклом for-each:

ArrayList<String> names = new ArrayList<>();
names.add("Аня");
names.add("Боря");

for (String name : names) {
    System.out.println("Привет, " + name);
}

Вывод:

Привет, Аня
Привет, Боря

Коротко

  • ArrayList — список с динамическим размером; импорт из java.util.
  • Тип элементов задают в угловых скобках (обобщения); для чисел — Integer, не int.
  • Ключевые методы: add, get, set, remove, size, contains.
  • Перебирают циклом for-each.
Проверьте себя
1. Чем ArrayList отличается от массива?
AНичем
BArrayList меняет размер динамически
CArrayList быстрее во всём
DВ ArrayList нельзя хранить строки
2. Как объявить список целых чисел?
AArrayList<int>
BArrayList<Integer>
CArrayList[int]
DArrayList(int)
3. Какой метод вернёт количество элементов списка?
Alength
Bsize()
Ccount()
Dlength()
Поддержать проект