Ітератор
Коротко: Об’єкт, що використовується для послідовного перебору елементів колекції без потреби знати конкретну внутрішню реалізацію структури даних.
Докладніше: Ітератор усередині відстежує поточну позицію й зазвичай пропонує дві основні операції: перевірити, чи йде ще елемент, і отримати наступний елемент. Це дозволяє повторно використовувати той самий код перебору для дуже різних структур даних (список, множина, мапа) — цикл «for-each» у багатьох мовах зазвичай лише зручне скорочення для роботи з ним.
Подробиці
Без ітератора будь-який код, що перебирає…