Какие плюсы и минусы ArrayList

«Какие плюсы и минусы ArrayList» — вопрос из категории Алгоритмы и структуры данных, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Плюсы:

  • Быстрый доступ по индексу (O(1))
  • Удобен для частого чтения элементов
  • Поддерживает динамическое расширение
  • Реализует интерфейсы List, RandomAccess

Минусы:

  • Медленная вставка/удаление в середину (O(n))
  • Требует перераспределения памяти при расширении
  • Неэффективен для частых структурных изменений
val list = ArrayList<String>()
list.add("A") // Быстро, если не требуется resize
list.removeAt(0) // Медленно при большом размере