org.apache.commons.jexl.util
Class ArrayIterator

java.lang.Object
  extended by org.apache.commons.jexl.util.ArrayIterator
All Implemented Interfaces:
java.util.Iterator

public class ArrayIterator
extends java.lang.Object
implements java.util.Iterator

An Iterator wrapper for an Object[]. This will allow us to deal with all array like structures in a consistent manner.

WARNING : this class's operations are NOT synchronized. It is meant to be used in a single thread, newly created for each use in the #foreach() directive. If this is used or shared, synchronize in the next() method.

Since:
1.0
Version:
$Id: ArrayIterator.java 398329 2006-04-30 12:51:43Z dion $
Author:
Jason van Zyl, Geir Magnusson Jr.

Field Summary
private  java.lang.Object array
          The objects to iterate over.
private  int pos
          The current position and size in the array.
private  int size
          The size of the array.
 
Constructor Summary
ArrayIterator(java.lang.Object arr)
          Creates a new iterator instance for the specified array.
 
Method Summary
 boolean hasNext()
          Check to see if there is another element in the array.
 java.lang.Object next()
          Move to next element in the array.
 void remove()
          No op--merely added to satify the Iterator interface.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

array

private final java.lang.Object array
The objects to iterate over.


pos

private int pos
The current position and size in the array.


size

private final int size
The size of the array.

Constructor Detail

ArrayIterator

public ArrayIterator(java.lang.Object arr)
Creates a new iterator instance for the specified array.

Parameters:
arr - The array for which an iterator is desired.
Method Detail

next

public java.lang.Object next()
Move to next element in the array.

Specified by:
next in interface java.util.Iterator
Returns:
The next object in the array.

hasNext

public boolean hasNext()
Check to see if there is another element in the array.

Specified by:
hasNext in interface java.util.Iterator
Returns:
Whether there is another element.

remove

public void remove()
No op--merely added to satify the Iterator interface.

Specified by:
remove in interface java.util.Iterator