AI-generated Key Takeaways
- 
          PrimitiveIteratoris a base type for specializedIteratorimplementations 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 doublevalues. | |
| interface | PrimitiveIterator.OfInt | An Iterator specialized for intvalues. | |
| interface | PrimitiveIterator.OfLong | An Iterator specialized for longvalues. | |
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 | 
|---|
