public class ArrayIterator extends java.lang.Object implements ResettableIterator
Iterator
over any array.
The array can be either an array of object or of primitives. If you know
that you have an object array, the
ObjectArrayIterator
class is a better choice, as it will perform better.
The iterator implements a reset()
method, allowing the reset of
the iterator back to the start if required.
Constructor and Description |
---|
ArrayIterator()
Constructor for use with
setArray . |
ArrayIterator(java.lang.Object array)
Constructs an ArrayIterator that will iterate over the values in the
specified array.
|
ArrayIterator(java.lang.Object array,
int startIndex)
Constructs an ArrayIterator that will iterate over the values in the
specified array from a specific start index.
|
ArrayIterator(java.lang.Object array,
int startIndex,
int endIndex)
Construct an ArrayIterator that will iterate over a range of values
in the specified array.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
getArray()
Gets the array that this iterator is iterating over.
|
boolean |
hasNext()
Returns true if there are more elements to return from the array.
|
java.lang.Object |
next()
Returns the next element in the array.
|
void |
remove()
Throws
UnsupportedOperationException . |
void |
reset()
Resets the iterator back to the start index.
|
void |
setArray(java.lang.Object array)
Sets the array that the ArrayIterator should iterate over.
|
public ArrayIterator()
setArray
.
Using this constructor, the iterator is equivalent to an empty iterator
until setArray(Object)
is called to establish the array to iterate over.
public ArrayIterator(java.lang.Object array)
array
- the array to iterate over.java.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
public ArrayIterator(java.lang.Object array, int startIndex)
array
- the array to iterate over.startIndex
- the index to start iterating at.java.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
java.lang.IndexOutOfBoundsException
- if the index is invalidpublic ArrayIterator(java.lang.Object array, int startIndex, int endIndex)
array
- the array to iterate over.startIndex
- the index to start iterating at.endIndex
- the index to finish iterating at.java.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
java.lang.IndexOutOfBoundsException
- if either index is invalidpublic boolean hasNext()
hasNext
in interface java.util.Iterator
public java.lang.Object next()
next
in interface java.util.Iterator
java.util.NoSuchElementException
- if all the elements in the array
have already been returnedpublic void remove()
UnsupportedOperationException
.remove
in interface java.util.Iterator
java.lang.UnsupportedOperationException
- alwayspublic java.lang.Object getArray()
null
if
the no-arg constructor was used and setArray(Object)
has never
been called with a valid array.public void setArray(java.lang.Object array)
If an array has previously been set (using the single-arg constructor
or this method) then that array is discarded in favour of this one.
Iteration is restarted at the start of the new array.
Although this can be used to reset iteration, the reset()
method
is a more effective choice.
array
- the array that the iterator should iterate over.java.lang.IllegalArgumentException
- if array
is not an array.java.lang.NullPointerException
- if array
is null
public void reset()
reset
in interface ResettableIterator
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"