AI-generated Key Takeaways
-
PrimitiveIterator
is a base type for specializedIterator
implementations for primitive data types (int
,long
, anddouble
). -
It provides a mechanism to iterate over primitive values without boxing, enhancing performance.
-
Specialized subtypes, like
PrimitiveIterator.OfInt
, offer methods such asnextInt()
for direct access to primitive values. -
While default
next()
implementations box primitive values, using primitive-specific methods is recommended for efficiency. -
forEachRemaining()
method processes all remaining elements with a specified action, until completion or an exception is encountered.
Known Indirect Subclasses |
A base type for primitive specializations of Iterator
. Specialized
subtypes are provided for int
, long
, and
double
values.
The specialized subtype default implementations of Iterator.next()
and Iterator.forEachRemaining(java.util.function.Consumer)
box
primitive values to instances of their corresponding wrapper class. Such
boxing may offset any advantages gained when using the primitive
specializations. To avoid boxing, the corresponding primitive-based methods
should be used. For example, PrimitiveIterator.OfInt.nextInt()
and
PrimitiveIterator.OfInt.forEachRemaining(java.util.function.IntConsumer)
should be used in preference to PrimitiveIterator.OfInt.next()
and
Iterator.forEachRemaining(java.util.function.Consumer)
.
Iteration of primitive values using boxing-based methods
next()
and
forEachRemaining()
,
does not affect the order in which the values, transformed to boxed values,
are encountered.
Nested Class Summary
interface | PrimitiveIterator.OfDouble | An Iterator specialized for double values. |
|
interface | PrimitiveIterator.OfInt | An Iterator specialized for int values. |
|
interface | PrimitiveIterator.OfLong | An Iterator specialized for long values. |
Public Method Summary
abstract void |
forEachRemaining(T_CONS action)
Performs the given action for each remaining element, in the order
elements occur when iterating, until all elements have been processed
or the action throws an exception.
|
Inherited Method Summary
Public Methods
public abstract void forEachRemaining (T_CONS action)
Performs the given action for each remaining element, in the order elements occur when iterating, until all elements have been processed or the action throws an exception. Errors or runtime exceptions thrown by the action are relayed to the caller.
Parameters
action | The action to be performed for each element |
---|
Throws
NullPointerException | if the specified action is null |
---|