Java Interview Tasks
4.83K subscribers
212 photos
1 video
1 file
140 links
Реальные вопросы и задачи с собеседований.
Оригинальный авторский контент.
Актуальный материал.
Уровень вопросов от junior до supersenior.

Автор канала - @alexzelentsov

По рекламе: @alexzelentsov
Download Telegram
🔍 Ответ на задачу про Iterator.remove(): Чистим коллекцию правильно 🧹
- Вариант A (for-each) использует итератор неявно. Если мы вызываем list.remove() напрямую, итератор об этом не знает и при следующей проверке modCount выбросит ConcurrentModificationException.
- Вариант B использует iterator.remove(). Этот метод специально спроектирован для безопасного удаления текущего элемента во время итерации.

Вывод:
Верный вариант — B. (Хотя есть исключение: в ArrayList удаление предпоследнего элемента через list.remove() в for-each может не вызвать ошибку из-за бага/особенности проверки hasNext(), но полагаться на это нельзя).

⚡️ Не перепутайте:
В Java 8+ самый простой и безопасный способ: list.removeIf(s -> s.equals("A")).

#java #collections #iterator #bug #clean_code #интервью #java_interview_tasks
👏5❤1🍌1