Iterator Pattern Allows to iterate over a data structure sequencially, without knowing how the data structure is implemented. UML diagram: