Назад к вопросам

Ответ от нейросети

sobes.tech AI

ArrayList - это динамический массив в Java, который является частью Collection Framework. Он реализует интерфейс List.

Основные характеристики:

  • Изменяемый размер: Размер ArrayList может динамически увеличиваться или уменьшаться по мере добавления или удаления элементов.
  • Доступ по индексу: Элементы хранятся в порядке добавления и доступны по целочисленному индексу, начиная с 0.
  • Допускает null: Может содержать элементы null.
  • Допускает дубликаты: Может содержать повторяющиеся элементы.
  • Не синхронизирован: Не потокобезопасен по умолчанию. Для потокобезопасной версии можно использовать Collections.synchronizedList(new ArrayList<...>()).
  • Поиск: Эффективен для операций поиска элемента по индексу (O(1)).
  • Вставка/Удаление: Операции вставки и удаления элементов могут быть медленными (O(n)), особенно в начале или середине списка, так как может потребоваться сдвиг всех последующих элементов.

Пример создания:

// Пример создания ArrayList строк
ArrayList<String> names = new ArrayList<>();

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

Метод Описание
add(E e) Добавляет элемент в конец списка
add(int index, E element) Вставляет элемент по индексу
get(int index) Возвращает элемент по индексу
remove(int index) Удаляет элемент по индексу
size() Возвращает количество элементов
isEmpty() Проверяет, пуст ли список
contains(Object o) Проверяет наличие элемента
clear() Удаляет все элементы