KickJava   Java API By Example, From Geeks To Geeks.

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


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.Enumeration JavaDoc;
7 import java.util.NoSuchElementException JavaDoc;
8
9 /**
10  * Enumeration over an array.
11  */

12 public class ArrayEnumeration implements Enumeration JavaDoc, Serializable JavaDoc {
13
14     private Object JavaDoc mArray[];
15     private int mCurrentElement;
16     private int mArrayLength;
17     private int mOffset;
18     
19     public ArrayEnumeration(Object JavaDoc aobj[]) {
20         mArray = aobj;
21         mCurrentElement = 0;
22         mOffset = 0;
23         mArrayLength = mArray.length;
24     }
25
26     public ArrayEnumeration(Object JavaDoc aobj[], int i, int j) {
27         mArray = aobj;
28         mCurrentElement = i;
29         mOffset = i;
30         mArrayLength = (j - i) + 1;
31     }
32
33     public boolean hasMoreElements() {
34         return mCurrentElement < mArrayLength + mOffset;
35     }
36
37     public Object JavaDoc nextElement() throws NoSuchElementException JavaDoc {
38         try {
39             mCurrentElement++;
40             return mArray[mCurrentElement - 1];
41         } catch (ArrayIndexOutOfBoundsException JavaDoc aiofbex) {
42             throw new NoSuchElementException JavaDoc();
43         }
44     }
45 }
Popular Tags