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:
java.util.Iterator<E>
,ResettableIterator<E>
- Direct Known Subclasses:
ArrayListIterator
public class ArrayIterator<E> extends java.lang.Object implements ResettableIterator<E>
Implements anIterator
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
Constructors Constructor Description 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.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.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.E
next()
Returns the next element in the array.void
remove()
ThrowsUnsupportedOperationException
.void
reset()
Resets the iterator back to the start index.
-
-
-
Constructor Detail
-
ArrayIterator
public ArrayIterator(java.lang.Object array)
Constructs an ArrayIterator that will iterate over the values in the specified array.- Parameters:
array
- the array to iterate over.- Throws:
java.lang.IllegalArgumentException
- ifarray
is not an array.java.lang.NullPointerException
- ifarray
isnull
-
ArrayIterator
public 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.- Parameters:
array
- the array to iterate over.startIndex
- the index to start iterating at.- Throws:
java.lang.IllegalArgumentException
- ifarray
is not an array.java.lang.NullPointerException
- ifarray
isnull
java.lang.IndexOutOfBoundsException
- if the index is invalid
-
ArrayIterator
public ArrayIterator(java.lang.Object array, int startIndex, int endIndex)
Construct 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:
java.lang.IllegalArgumentException
- ifarray
is not an array.java.lang.NullPointerException
- ifarray
isnull
java.lang.IndexOutOfBoundsException
- if either index is invalid
-
-
Method Detail
-
hasNext
public boolean hasNext()
Returns true if there are more elements to return from the array.- Specified by:
hasNext
in interfacejava.util.Iterator<E>
- Returns:
- true if there is a next element to return
-
next
public E next()
Returns the next element in the array.- Specified by:
next
in interfacejava.util.Iterator<E>
- Returns:
- the next element in the array
- Throws:
java.util.NoSuchElementException
- if all the elements in the array have already been returned
-
remove
public void remove()
ThrowsUnsupportedOperationException
.- Specified by:
remove
in interfacejava.util.Iterator<E>
- Throws:
java.lang.UnsupportedOperationException
- always
-
getArray
public java.lang.Object getArray()
Gets the array that this iterator is iterating over.- Returns:
- the array this iterator iterates over.
-
getStartIndex
public int getStartIndex()
Gets the start index to loop from.- Returns:
- the start index
- Since:
- 4.0
-
getEndIndex
public int getEndIndex()
Gets the end index to loop to.- Returns:
- the end index
- Since:
- 4.0
-
reset
public void reset()
Resets the iterator back to the start index.- Specified by:
reset
in interfaceResettableIterator<E>
-
-