|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
An iterator for lists that allows the programmer to traverse the list in either direction, modify the list during iteration, and obtain the iterator's current position in the list. A ListIterator has no current element; its cursor position always lies between the element that would be returned by a call to previous() and the element that would be returned by a call to next(). In a list of length n, there are n+1 valid index values, from 0 to n, inclusive.
Element(0) Element(1) Element(2) ... Element(n) ^ ^ ^ ^ ^ Index: 0 1 2 3 n+1
Note that the remove()
and #set(Object)
methods are
not defined in terms of the cursor position; they are defined to
operate on the last element returned by a call to next()
or previous()
.
Collection
,
List
,
Iterator
,
Enumeration
Method Summary | |
void |
add(E e)
Inserts the specified element into the list (optional operation). |
boolean |
hasNext()
Returns true if this list iterator has more elements when traversing the list in the forward direction. |
boolean |
hasPrevious()
Returns true if this list iterator has more elements when traversing the list in the reverse direction. |
E |
next()
Returns the next element in the list. |
int |
nextIndex()
Returns the index of the element that would be returned by a subsequent call to next. |
E |
previous()
Returns the previous element in the list. |
int |
previousIndex()
Returns the index of the element that would be returned by a subsequent call to previous. |
void |
remove()
Removes from the list the last element that was returned by next or previous (optional operation). |
void |
set(E e)
Replaces the last element returned by next or previous with the specified element (optional operation). |
Method Detail |
public boolean hasNext()
hasNext
in interface Iterator<E>
public E next()
next
in interface Iterator<E>
NoSuchElementException
- if the iteration has no next element.public boolean hasPrevious()
public E previous()
NoSuchElementException
- if the iteration has no previous
element.public int nextIndex()
public int previousIndex()
public void remove()
remove
in interface Iterator<E>
java.lang.UnsupportedOperationException
- if the remove
operation is not supported by this list iterator.java.lang.IllegalStateException
- neither next nor
previous have been called, or remove or
add have been called after the last call to *
next or previous.public void set(E e)
o
- the element with which to replace the last element returned by
next or previous.java.lang.UnsupportedOperationException
- if the set operation
is not supported by this list iterator.java.lang.ClassCastException
- if the class of the specified element
prevents it from being added to this list.java.lang.IllegalArgumentException
- if some aspect of the specified
element prevents it from being added to this list.java.lang.IllegalStateException
- if neither next nor
previous have been called, or remove or
add have been called after the last call to
next or previous.public void add(E e)
o
- the element to insert.java.lang.UnsupportedOperationException
- if the add method is
not supported by this list iterator.java.lang.ClassCastException
- if the class of the specified element
prevents it from being added to this Set.java.lang.IllegalArgumentException
- if some aspect of this element
prevents it from being added to this Collection.
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |