Sobes.tech
Назад к вопросам
Junior — Middle
98

Какое отличие существует между перечислителем и итератором в языке Java?

Компании, где спрашивали
Драйв Клик

Ответ от нейросети

sobes.tech AI

Перечислитель (Enumeration) и итератор (Iterator) — это интерфейсы для обхода коллекций в Java, но между ними есть отличия:

  • Enumeration — устаревший интерфейс, появился в ранних версиях Java. Методы: hasMoreElements() и nextElement(). Не поддерживает удаление элементов.
  • Iterator — более современный интерфейс, введён с Java 1.2. Методы: hasNext(), next() и remove(). Позволяет безопасно удалять элементы во время обхода.

Пример использования Iterator:

List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
Iterator<String> it = list.iterator();
while (it.hasNext()) {
    String s = it.next();
    if (s.equals("a")) {
        it.remove();
    }
}