Java-коллекции были написаны для обеспечения минимального набора полезных функций. Это очень хороший подход для кода, который имеет , который должен быть реализован любым, кто реализует Java. Раздувание интерфейса с функциональностью, которая может быть полезной, может привести к значительному увеличению объема кода с улучшениями, замеченными лишь немногими. Если peek () и previous () были частью стандартного итератора, это означает, что каждый, кто пишет новый тип Collection , должен реализовать его, независимо от того, разумно это или нет.
Итераторы также предназначены для работы с вещами, которые физически не могут вернуться назад, делая невозможным оба peek () и previous ().