KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jodd > util > collection > ArrayIterator


1 // Copyright (c) 2003-2007, Jodd Team (jodd.sf.net). All Rights Reserved.
2

3 package jodd.util.collection;
4
5 import java.io.Serializable JavaDoc;
6 import java.util.Iterator JavaDoc;
7 import java.util.NoSuchElementException JavaDoc;
8
9
10 /**
11  * Iterator over an array.
12  */

13 public class ArrayIterator implements Iterator JavaDoc, Serializable JavaDoc {
14     
15     private Object JavaDoc mArray[];
16     private int mCurrentElement;
17     private int mArrayLength;
18     private int mOffset;
19
20     public ArrayIterator(Object JavaDoc aobj[]) {
21         mArray = aobj;
22         mCurrentElement = 0;
23         mOffset = 0;
24         mArrayLength = mArray.length;
25     }
26
27     public ArrayIterator(Object JavaDoc aobj[], int i, int j) {
28         mArray = aobj;
29         mCurrentElement = i;
30         mOffset = i;
31         mArrayLength = (j - i) + 1;
32     }
33
34     public boolean hasNext() {
35         return mCurrentElement < mArrayLength + mOffset;
36     }
37
38     public Object JavaDoc next() throws NoSuchElementException JavaDoc {
39         try {
40             mCurrentElement++;
41             return mArray[mCurrentElement - 1];
42         } catch (ArrayIndexOutOfBoundsException JavaDoc _ex) {
43             throw new NoSuchElementException JavaDoc();
44         }
45     }
46
47     public void remove() throws UnsupportedOperationException JavaDoc {
48         throw new UnsupportedOperationException JavaDoc();
49     }
50 }
51
Popular Tags