|
||||||||||
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()
.
This interface is a member of the Java Collections Framework.
Collection
,
List
,
Iterator
,
Enumeration
Method Summary | |
void |
add(Object o)
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. |
Object |
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. |
Object |
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(Object o)
Replaces the last element returned by next or previous with the specified element (optional operation). |
Method Detail |
public boolean hasNext()
hasNext
in interface Iterator
public Object next()
next
in interface Iterator
NoSuchElementException
- if the iteration has no next element.public boolean hasPrevious()
public Object previous()
NoSuchElementException
- if the iteration has no previous
element.public int nextIndex()
public int previousIndex()
public void remove()
remove
in interface Iterator
UnsupportedOperationException
- if the remove
operation is not supported by this list iterator.
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(Object o)
o
- the element with which to replace the last element returned by
next or previous.
UnsupportedOperationException
- if the set operation
is not supported by this list iterator.
ClassCastException
- if the class of the specified element
prevents it from being added to this list.
IllegalArgumentException
- if some aspect of the specified
element prevents it from being added to this list.
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(Object o)
o
- the element to insert.
UnsupportedOperationException
- if the add method is
not supported by this list iterator.
ClassCastException
- if the class of the specified element
prevents it from being added to this list.
IllegalArgumentException
- if some aspect of this element
prevents it from being added to this list.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |