List and Set collections provide iterators, which are objects that allow going
over all the elements of a collection in sequence. The java.util.Iterator
interface provides for one-way traversal and java.util.ListIterator is an
iterator for lists that allows the programmer to traverse the list in either
direction (i.e. forward and or backward) and modify the list during iteration.