public class ArrayListIterator<E> extends ArrayIterator<E> implements ResettableListIterator<E>
ListIterator
over an array.
The array can be either an array of object or of primitives. If you know
that you have an object array, the ObjectArrayListIterator
class is a better choice, as it will perform better.
This iterator does not support add(Object)
or ArrayIterator.remove()
, as the array
cannot be changed in size. The set(Object)
method is supported however.
ArrayIterator
,
Iterator
,
ListIterator
Constructor and Description |
---|
ArrayListIterator(java.lang.Object array)
Constructs an ArrayListIterator that will iterate over the values in the
specified array.
|
ArrayListIterator(java.lang.Object array,
int startIndex)
Constructs an ArrayListIterator that will iterate over the values in the
specified array from a specific start index.
|
ArrayListIterator(java.lang.Object array,
int startIndex,
int endIndex)
Construct an ArrayListIterator that will iterate over a range of values
in the specified array.
|
Modifier and Type | Method and Description |
---|---|
void |
add(java.lang.Object o)
This iterator does not support modification of its backing collection, 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(java.lang.Object o)
Sets the element under the cursor.
|
getArray, getEndIndex, getStartIndex, hasNext, remove
public ArrayListIterator(java.lang.Object array)
array
- the array to iterate overjava.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
public ArrayListIterator(java.lang.Object array, int startIndex)
array
- the array to iterate overstartIndex
- the index to start iterating atjava.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
java.lang.IndexOutOfBoundsException
- if the start index is out of boundspublic ArrayListIterator(java.lang.Object array, int startIndex, int endIndex)
array
- the array to iterate overstartIndex
- the index to start iterating atendIndex
- the index (exclusive) to finish iterating atjava.lang.IllegalArgumentException
- if array
is not an array.java.lang.IndexOutOfBoundsException
- if the start or end index is out of boundsjava.lang.IllegalArgumentException
- if end index is before the startjava.lang.NullPointerException
- if array
is null
public boolean hasPrevious()
hasPrevious
in interface java.util.ListIterator<E>
hasPrevious
in interface OrderedIterator<E>
public E previous()
previous
in interface java.util.ListIterator<E>
previous
in interface OrderedIterator<E>
java.util.NoSuchElementException
- if there is no previous elementpublic E next()
next
in interface java.util.Iterator<E>
next
in interface java.util.ListIterator<E>
next
in class ArrayIterator<E>
java.util.NoSuchElementException
- if there is no next elementpublic int nextIndex()
nextIndex
in interface java.util.ListIterator<E>
public int previousIndex()
previous()
is called.previousIndex
in interface java.util.ListIterator<E>
public void add(java.lang.Object o)
UnsupportedOperationException
when this method is invoked.add
in interface java.util.ListIterator<E>
o
- the element to addjava.lang.UnsupportedOperationException
- always thrown.ListIterator.set(E)
public void set(java.lang.Object o)
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 java.util.ListIterator<E>
o
- the element to setjava.lang.IllegalStateException
- if next()
or previous()
has not been called
before set(Object)
ListIterator.set(E)
public void reset()
reset
in interface ResettableIterator<E>
reset
in class ArrayIterator<E>
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"