Iterator и Enumeration — это Java-интерфейсы для обхода элементов структур данных и доступа к ним. Но они довольно сильно отличаются по дизайну, функциональности и области применения.
Vector и HashtableArrayList и HashMapremove(), поэтому удалять элементы во время обхода невозможноremove(), позволяя безопасно удалять элементы во время итерацииConcurrentModificationException, если другой поток изменяет коллекцию во время итерацииIterator использует короткие названия методов:
hasNext()next()remove()Enumeration использует более длинные названия методов:
hasMoreElements()nextElement()Iterator — правильный выбор для современных Java-приложений: он даёт более надёжные гарантии безопасности, поддерживает изменение коллекции и предлагает чистый API. Используй Enumeration только когда работаешь с легаси-кодом, которому нужна совместимость со старыми коллекциями.
Интерфейс Iterator предоставляет метод remove(), который позволяет безопасно удалять элементы во время обхода, тогда как Enumeration полностью лишен этой возможности.
Новый — ещё не проверен сообществом
Вы