Встречается на собеседованиях • сегодня
Когда использовал бы CopyOnWriteArrayList
`CopyOnWriteArrayList` идеален для сценариев с частым чтением и редкими модификациями (add/remove). Он создает новую копию массива при изменении, обеспечивая потокобезопасность без блокировок для читателей.
**Пример использования:**
```java
CopyOnWriteArrayList list = new CopyOnWriteArrayList<>();
list.add("Java"); // Дорогая операция (копирование)
// Потокобезопасное чтение без блокировок
list.forEach(System.out::println);
```
**Плюсы:**
- Нет `ConcurrentModificationException` при итерации.
- Чтение не блокируется.
**Минусы:**
- Затраты на копирование при записи.
- Может привести к устаревшим данным (старая копия).
Используй в кэшах, слушателях событий (например, `EventListener` списки в Swing).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы