java.util
Interface ListIterator
java.lang.Object
|
+--java.util.Iterator
|
+--java.util.ListIterator
All Implemented Interfaces:
Iterator
public interface
ListIteratorimplements
Iterator An extended version of Iterator to support the extra features of Lists. The
elements may be accessed in forward or reverse order, elements may be
replaced as well as removed, and new elements may be inserted, during the
traversal of the list.
A list with n elements provides n+1 iterator positions (the front, the end,
or between two elements). Note that remove
and set
operate on the last element returned, whether it was by next
or previous
.
Since:Authors:- Original author unknown
- Eric Blake <ebb9@email.byu.edu>
See Also:
add
public void add(java.lang.Object o)
Insert an element into the list at the current position of the iterator
(optional operation). The element is inserted in between the element that
would be returned by previous and the element that would be returned by
next. After the insertion, a subsequent call to next is unaffected, but
a call to previous returns the item that was added. The values returned
by nextIndex() and previousIndex() are incremented.
Parameters:
Throws:
hasNext
public boolean hasNext()
Tests whether there are elements remaining in the list in the forward
direction. In other words, next() will not fail with a
NoSuchElementException.
Returns:
- true if the list continues in the forward direction
hasPrevious
public boolean hasPrevious()
Tests whether there are elements remaining in the list in the reverse
direction. In other words, previous() will not fail with a
NoSuchElementException.
Returns:
- true if the list continues in the reverse direction
next
public Object next()
Obtain the next element in the list in the forward direction. Repeated
calls to next may be used to iterate over the entire list, or calls to
next and previous may be used together to go forwards and backwards.
Alternating calls to next and previous will return the same element.
Returns:
- the next element in the list in the forward direction
Throws:
nextIndex
public int nextIndex()
Find the index of the element that would be returned by a call to next.
If hasNext() returns false, this returns the list size.
Returns:
- the index of the element that would be returned by next()
previous
public Object previous()
Obtain the next element in the list in the reverse direction. Repeated
calls to previous may be used to iterate backwards over the entire list,
or calls to next and previous may be used together to go forwards and
backwards. Alternating calls to next and previous will return the same
element.
Returns:
- the next element in the list in the reverse direction
Throws:
previousIndex
public int previousIndex()
Find the index of the element that would be returned by a call to
previous. If hasPrevious() returns false, this returns -1.
Returns:
- the index of the element that would be returned by previous()
remove
public void remove()
Remove from the list the element last returned by a call to next or
previous (optional operation). This method may only be called if neither
add nor remove have been called since the last call to next or previous.
Throws:
set
public void set(java.lang.Object o)
Replace the element last returned by a call to next or previous with a
given object (optional operation). This method may only be called if
neither add nor remove have been called since the last call to next or
previous.
Parameters:
Throws:
A list with n elements provides n+1 iterator positions (the front, the end, or between two elements). Note that
remove
andset
operate on the last element returned, whether it was bynext
orprevious
.