public interface IteratorNumber
IteratorByte, IteratorShort,
IteratorInt, IteratorLong, IteratorFloat and
IteratorDouble.
We looked into making this class implement Iterator, but unfortunately,
because of generics being invariant, we cannot provide a scheme that would work naturally
in all cases. Ideally, we would want to have IteratorNumber be Iterator<Number>
and IteratorDouble be Iterator<Double>, but this does
not work because generics are invariant. We could have
Iterator<T extends Number> and Iterator<Double>, but that would
mean IteratorNumber would need a type parameter, and the user of the
API would have to use bound type parameters like IteratorNumber<? extends Number>,
which is awful. We could have all extend Iterator<Number> but then
the foreach loops would return Number in all cases, even for collections
of more specific type.
| Modifier and Type | Method and Description |
|---|---|
boolean |
hasNext()
Returns
true if the iteration has more elements. |
byte |
nextByte()
Returns the next element in the iteration casted to a byte.
|
double |
nextDouble()
Returns the next element in the iteration casted to a double.
|
float |
nextFloat()
Returns the next element in the iteration casted to a float.
|
int |
nextInt()
Returns the next element in the iteration casted to an int.
|
long |
nextLong()
Returns the next element in the iteration casted to a long.
|
short |
nextShort()
Returns the next element in the iteration casted to a short.
|
boolean hasNext()
true if the iteration has more elements.
(In other words, returns true if nextXxx would
return an element rather than throwing an exception.)true if the iteration has more elementsfloat nextFloat()
NoSuchElementException - if the iteration has no more elementsdouble nextDouble()
NoSuchElementException - if the iteration has no more elementsbyte nextByte()
NoSuchElementException - if the iteration has no more elementsshort nextShort()
NoSuchElementException - if the iteration has no more elementsint nextInt()
NoSuchElementException - if the iteration has no more elementslong nextLong()
NoSuchElementException - if the iteration has no more elementsCopyright © 2015. All rights reserved.