says that for iterates through everything that provides an iterator, which means: has a member- or extension-function iterator(), whose return type contains a member or extension-function next(), and contains a member or extension-function hasNext() that returns Boolean.