public class ObjectArrayListIterator<E> extends ObjectArrayIterator<E> implements ResettableListIterator<E>
ListIterator
over an array of objects.
This iterator does not support add(E)
or ObjectArrayIterator.remove()
, as the object array
cannot be structurally modified. The set(E)
method is supported however.
The iterator implements a reset()
method, allowing the reset of the iterator
back to the start if required.
ObjectArrayIterator
,
Iterator
,
ListIterator
Constructor and Description |
---|
ObjectArrayListIterator(E... array)
Constructs an ObjectArrayListIterator that will iterate over the values in the
specified array.
|
ObjectArrayListIterator(E[] array,
int start)
Constructs an ObjectArrayListIterator that will iterate over the values in the
specified array from a specific start index.
|
ObjectArrayListIterator(E[] array,
int start,
int end)
Construct an ObjectArrayListIterator that will iterate over a range of values
in the specified array.
|
Modifier and Type | Method and Description |
---|---|
void |
add(E obj)
This iterator does not support modification of its backing array's size, and so will
always throw an
UnsupportedOperationException when this method is invoked. |
boolean |
hasPrevious()
Returns true if there are previous elements to return from the array.
|
E |
next()
Gets the next element from the array.
|
int |
nextIndex()
Gets the next index to be retrieved.
|
E |
previous()
Gets the previous element from the array.
|
int |
previousIndex()
Gets the index of the item to be retrieved if
previous() is called. |
void |
reset()
Resets the iterator back to the start index.
|
void |
set(E obj)
Sets the element under the cursor.
|
getArray, getEndIndex, getStartIndex, hasNext, remove
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
hasNext, remove
public ObjectArrayListIterator(E... array)
array
- the array to iterate overNullPointerException
- if array
is null
public ObjectArrayListIterator(E[] array, int start)
array
- the array to iterate overstart
- the index to start iterating atNullPointerException
- if array
is null
IndexOutOfBoundsException
- if the start index is out of boundspublic ObjectArrayListIterator(E[] array, int start, int end)
array
- the array to iterate overstart
- the index to start iterating atend
- the index (exclusive) to finish iterating atIndexOutOfBoundsException
- if the start or end index is out of boundsIllegalArgumentException
- if end index is before the startNullPointerException
- if array
is null
public boolean hasPrevious()
hasPrevious
in interface ListIterator<E>
hasPrevious
in interface OrderedIterator<E>
public E previous()
previous
in interface ListIterator<E>
previous
in interface OrderedIterator<E>
NoSuchElementException
- if there is no previous elementpublic E next()
next
in interface Iterator<E>
next
in interface ListIterator<E>
next
in class ObjectArrayIterator<E>
NoSuchElementException
- if there is no next elementpublic int nextIndex()
nextIndex
in interface ListIterator<E>
public int previousIndex()
previous()
is called.previousIndex
in interface ListIterator<E>
public void add(E obj)
UnsupportedOperationException
when this method is invoked.add
in interface ListIterator<E>
obj
- the object to addUnsupportedOperationException
- always thrown.public void set(E obj)
This method sets the element that was returned by the last call
to next()
of previous()
.
Note: ListIterator
implementations that support add()
and remove()
only allow set()
to be called once per call
to next()
or previous
(see the ListIterator
javadoc for more details). Since this implementation does not support
add()
or remove()
, set()
may be
called as often as desired.
set
in interface ListIterator<E>
obj
- the object to set into the arrayIllegalStateException
- if next() has not yet been called.ClassCastException
- if the object type is unsuitable for the arraypublic void reset()
reset
in interface ResettableIterator<E>
reset
in class ObjectArrayIterator<E>
Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.