Встречается на собеседованиях • сегодня
Приведи пример Fail-Fast в Java
Fail-Fast в Java означает, что коллекция немедленно выбрасывает `ConcurrentModificationException`, если обнаруживает изменение структуры (добавление/удаление элементов) во время итерации.
Пример с `ArrayList`:
```java
List list = new ArrayList<>();
list.add("A");
list.add("B");
for (String item : list) {
list.remove(item); // Выбросит ConcurrentModificationException
}
```
Причина: итератор `ArrayList` проверяет `modCount` (счетчик изменений) и сравнивает с ожидаемым значением. Если они не совпадают - исключение.
Альтернатива - использовать `Iterator.remove()`:
```java
Iterator it = list.iterator();
while (it.hasNext()) {
it.next();
it.remove(); // Корректное удаление
}
```
Fail-Fast коллекции: `ArrayList`, `HashMap`, `HashSet` и другие из пакета `java.util`.

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