Ответ
Плюсы:
- Быстрый доступ по индексу (O(1))
- Удобен для частого чтения элементов
- Поддерживает динамическое расширение
- Реализует интерфейсы
List,RandomAccess
Минусы:
- Медленная вставка/удаление в середину (O(n))
- Требует перераспределения памяти при расширении
- Неэффективен для частых структурных изменений
val list = ArrayList<String>()
list.add("A") // Быстро, если не требуется resize
list.removeAt(0) // Медленно при большом размере