Итератор — это объект, реализующий метод next, который возвращает следующий элемент в очереди или выбрасывает исключение StopIteration, если не осталось элементов. 5 Он хранит информацию о текущем состоянии итерируемого объекта, над которым работает. 1
Iterator — это средство для итераций, позволяющее пройти через всю коллекцию, останавливаясь на каждом элементе с помощью next(). 3 Он предоставляет гибкость управления коллекцией в процессе итерации, позволяя вставлять, удалять и изменять элементы. 3
Таким образом, основное отличие в том, что итератор обрабатывает последовательность, а Iterator предоставляет возможность управлять коллекцией в процессе итерации.
Например, в Java Iterator сохраняет своё собственное состояние и не подвержен воздействию других итераторов, в то время как Iterator> выполняет итерацию по объектам некоторого типа, производного от Object, в то время как Iterator предоставляет только объекты. 2