Class ArrayIterator<E>
java.lang.Object
org.apache.commons.collections4.iterators.ArrayIterator<E>
- Type Parameters:
E
- the type of elements returned by this iterator.
- All Implemented Interfaces:
Iterator<E>
,ResettableIterator<E>
- Direct Known Subclasses:
ArrayListIterator
Implements an
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.
- Since:
- 1.0
-
Constructor Summary
ConstructorDescriptionArrayIterator
(Object array) Constructs an ArrayIterator that will iterate over the values in the specified array.ArrayIterator
(Object array, int startIndex) Constructs an ArrayIterator that will iterate over the values in the specified array from a specific start index.ArrayIterator
(Object array, int startIndex, int endIndex) Constructs an ArrayIterator that will iterate over a range of values in the specified array. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
checkBound
(int bound, int len, String type) Checks whether the index is valid or not.getArray()
Gets the array that this iterator is iterating over.int
Gets the end index to loop to.int
Gets the start index to loop from.boolean
hasNext()
Returns true if there are more elements to return from the array.next()
Returns the next element in the array.void
remove()
ThrowsUnsupportedOperationException
.void
reset()
Resets the iterator back to the start index.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Constructor Details
-
ArrayIterator
Constructs an ArrayIterator that will iterate over the values in the specified array.- Parameters:
array
- the array to iterate over.- Throws:
IllegalArgumentException
- ifarray
is not an array.NullPointerException
- ifarray
isnull
-
ArrayIterator
Constructs an ArrayIterator that will iterate over the values in the specified array from a specific start index.- Parameters:
array
- the array to iterate over.startIndex
- the index to start iterating at.- Throws:
IllegalArgumentException
- ifarray
is not an array.NullPointerException
- ifarray
isnull
IndexOutOfBoundsException
- if the index is invalid
-
ArrayIterator
Constructs an ArrayIterator that will iterate over a range of values in the specified array.- Parameters:
array
- the array to iterate over.startIndex
- the index to start iterating at.endIndex
- the index to finish iterating at.- Throws:
IllegalArgumentException
- ifarray
is not an array.NullPointerException
- ifarray
isnull
IndexOutOfBoundsException
- if either index is invalid
-
-
Method Details
-
checkBound
Checks whether the index is valid or not.- Parameters:
bound
- the index to checklen
- the length of the arraytype
- the index type (for error messages)- Throws:
IndexOutOfBoundsException
- if the index is invalid
-
getArray
Gets the array that this iterator is iterating over.- Returns:
- the array this iterator iterates over.
-
getEndIndex
Gets the end index to loop to.- Returns:
- the end index
- Since:
- 4.0
-
getStartIndex
Gets the start index to loop from.- Returns:
- the start index
- Since:
- 4.0
-
hasNext
Returns true if there are more elements to return from the array. -
next
Returns the next element in the array.- Specified by:
next
in interfaceIterator<E>
- Returns:
- the next element in the array
- Throws:
NoSuchElementException
- if all the elements in the array have already been returned
-
remove
ThrowsUnsupportedOperationException
.- Specified by:
remove
in interfaceIterator<E>
- Throws:
UnsupportedOperationException
- always
-
reset
Resets the iterator back to the start index.- Specified by:
reset
in interfaceResettableIterator<E>
-