public abstract class THashIterator<V> extends Objectimplements TIterator , Iterator <V>
Note that iteration is fastest if you forego the calls to hasNext in favor of checking the size of the structure yourself and then call next() that many times:
Iterator i = collection.iterator();
for (int size = collection.size(); size-- > 0;) {
Object o = i.next();
}
You may, of course, use the hasNext(), next() idiom too if you aren't in a performance critical spot.
| Modifier and Type | Field and Description |
|---|---|
protected int |
_expectedSize
the number of elements this iterator believes are in the data structure it accesses.
|
protected THash |
_hash
the data structure this iterator traverses
|
protected int |
_index
the index used for iteration.
|
| Modifier | Constructor and Description |
|---|---|
protected |
THashIterator(TObjectHash
Create an instance of THashIterator over the values of the TObjectHash
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
hasNext()
Returns true if the iterator can be advanced past its current location.
|
protected void |
moveToNextIndex()
Sets the internal
index so that the `next' object can be returned.
|
V |
next()
Moves the iterator to the next Object and returns it.
|
protected int |
nextIndex()
Returns the index of the next value in the data structure or a negative value if the iterator is exhausted.
|
protected abstract V |
objectAtIndex(int index)
Returns the object at the specified index.
|
void |
remove()
Removes the last entry returned by the iterator.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEachRemainingprotected final THash_hash
protected int _expectedSize
protected int _index
protected THashIterator(TObjectHash<V> hash)
hash - the object
public V next()
next in interface
Iterator<V>
Object value
ConcurrentModificationException - if the structure was changed using a method that isn't on this iterator.
NoSuchElementException - if this is called on an exhausted iterator.
public boolean hasNext()
public void remove()
protected final void moveToNextIndex()
protected final int nextIndex()
int value
ConcurrentModificationException - if the underlying collection's size has been modified since the iterator was created.
protected abstract V objectAtIndex(int index)
index - the index of the value to return.
Object value