public class ObjectArrayIterator extends Object implements Iterator, ResettableIterator
Iterator
over an array of objects.
This iterator does not support remove()
, as the object array cannot be
structurally modified.
The iterator implements a reset()
method, allowing the reset of the iterator
back to the start if required.
Modifier and Type | Field and Description |
---|---|
protected Object[] |
array
The array
|
protected int |
endIndex
The end index to loop to
|
protected int |
index
The current iterator index
|
protected int |
startIndex
The start index to loop from
|
Constructor and Description |
---|
ObjectArrayIterator()
Constructor for use with
setArray . |
ObjectArrayIterator(Object[] array)
Constructs an ObjectArrayIterator that will iterate over the values in the
specified array.
|
ObjectArrayIterator(Object[] array,
int start)
Constructs an ObjectArrayIterator that will iterate over the values in the
specified array from a specific start index.
|
ObjectArrayIterator(Object[] array,
int start,
int end)
Construct an ObjectArrayIterator that will iterate over a range of values
in the specified array.
|
Modifier and Type | Method and Description |
---|---|
Object[] |
getArray()
Gets the array that this iterator is iterating over.
|
int |
getEndIndex()
Gets the end index to loop to.
|
int |
getStartIndex()
Gets the start index to loop from.
|
boolean |
hasNext()
Returns true if there are more elements to return from the array.
|
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(Object[] array)
Sets the array that the ArrayIterator should iterate over.
|
protected Object[] array
protected int startIndex
protected int endIndex
protected int index
public ObjectArrayIterator()
setArray
.
Using this constructor, the iterator is equivalent to an empty iterator
until setArray(java.lang.Object[])
is called to establish the array to iterate over.
public ObjectArrayIterator(Object[] array)
array
- the array to iterate overNullPointerException
- if array
is null
public ObjectArrayIterator(Object[] 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 ObjectArrayIterator(Object[] 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 hasNext()
public Object next()
next
in interface Iterator
NoSuchElementException
- if all the elements in the array
have already been returnedpublic void remove()
UnsupportedOperationException
.remove
in interface Iterator
UnsupportedOperationException
- alwayspublic Object[] getArray()
null
if
the no-arg constructor was used and setArray(java.lang.Object[])
has never
been called with a valid array.public void setArray(Object[] array)
This method may only be called once, otherwise an IllegalStateException will occur.
The reset()
method can be used to reset the iterator if required.
array
- the array that the iterator should iterate overIllegalStateException
- if the array
was set in the constructorNullPointerException
- if array
is null
public int getStartIndex()
public int getEndIndex()
public void reset()
reset
in interface ResettableIterator
Copyright © 2001–2015 The Apache Software Foundation. All rights reserved.