Ответ
ArrayList – реализация на основе динамического массива. Быстрый доступ по индексу (O(1)), но медленные вставка/удаление в середине (O(n)).
List<String> list = new ArrayList<>();
LinkedList – двунаправленный связный список. Быстрые вставка/удаление (O(1)), но медленный доступ по индексу (O(n)).
List<Integer> list = new LinkedList<>();
Vector – устаревший аналог ArrayList с синхронизированными методами (потокобезопасный, но медленнее).
CopyOnWriteArrayList – потокобезопасная реализация, создающая новую копию массива при изменении. Подходит для редких записей и частого чтения.
Arrays.asList() – возвращает неизменяемый список фиксированного размера на основе массива.
List<String> fixedList = Arrays.asList("a", "b");