Specifically, when elements are added to the list before or after the cursor, the cursor simply picks them up automatically. When the "current" (i.e., last returned by {@link ListIterator#next}or {@link ListIterator#previous}) element of the list is removed, the cursor automatically adjusts to the change (invalidating the last returned value--i.e., it cannot be removed).
Note that the returned {@link ListIterator} does not support the{@link ListIterator#nextIndex} and {@link ListIterator#previousIndex}methods (they throw {@link UnsupportedOperationException} when invoked.
Clients must close the cursor when they are done using it. The returned {@link ListIterator} will be an instance of{@link CursorableLinkedList.Cursor}. To close the cursor, cast the {@link ListIterator} to {@link CursorableLinkedList.Cursor}and invoke the {@link CursorableLinkedList.Cursor#close} method. @see #cursor(int) @see #listIterator @see CursorableLinkedList.Cursor
|
|
|
|