Iterator bewegt Cursor, dieser steht immer zwischen Elementen
interface List<E> extends Collection<E> { ...
ListIterator<E> listIterator ();
}
interface ListIterator<E> {
boolean hasNext (); E next ();
boolean hasPrevious (); E previous ();
int nextIndex (); int previousIndex ();
void remove (); // lösche das zuletzt gelieferte
void set (E o); // ersetze das zuletzt gelieferte
void add (E o); // zwischen Cursor und previous
}
Übung: eine Folge von remove, set, add ausführen.