org.drools.core.util
Class ArrayIterator

java.lang.Object
  extended by org.drools.core.util.ArrayIterator
All Implemented Interfaces:
Iterator

public class ArrayIterator
extends Object
implements Iterator

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:
Commons Collections 1.0
Version:
$Revision$ $Date$

Field Summary
protected  Object array
          The array to iterate over
protected  int endIndex
          The end index to loop to
protected  int index
          The current iterator index
 
Constructor Summary
ArrayIterator(Object array)
          Constructs an ArrayIterator that will iterate over the values in the specified array.
 
Method Summary
protected  void checkBound(int bound, String type)
          Checks whether the index is valid or not.
 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.
 Object next()
          Returns the next element in the array.
 void remove()
          Throws UnsupportedOperationException.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

array

protected Object array
The array to iterate over


endIndex

protected int endIndex
The end index to loop to


index

protected int index
The current iterator index

Constructor Detail

ArrayIterator

public ArrayIterator(Object array)
Constructs an ArrayIterator that will iterate over the values in the specified array.

Parameters:
array - the array to iterate over.
Throws:
IllegalArgumentException - if array is not an array.
NullPointerException - if array is null
Method Detail

checkBound

protected void checkBound(int bound,
                          String type)
Checks whether the index is valid or not.

Parameters:
bound - the index to check
type - the index type (for error messages)
Throws:
IndexOutOfBoundsException - if the index is invalid

hasNext

public boolean hasNext()
Returns true if there are more elements to return from the array.

Specified by:
hasNext in interface Iterator
Returns:
true if there is a next element to return

next

public Object next()
Returns the next element in the array.

Specified by:
next in interface Iterator
Returns:
the next element in the array
Throws:
NoSuchElementException - if all the elements in the array have already been returned

remove

public void remove()
Throws UnsupportedOperationException.

Specified by:
remove in interface Iterator
Throws:
UnsupportedOperationException - always

getArray

public Object getArray()
Gets the array that this iterator is iterating over.

Returns:
the array this iterator iterates over, or null if the no-arg constructor was used and setArray(Object) has never been called with a valid array.


Copyright © 2001-2013 JBoss Inc.. All Rights Reserved.