T
- the type of elements returned by this PrimitiveIterator. The
type must be a wrapper type for a primitive type, such as
Integer
for the primitive int
type.T_CONS
- the type of primitive consumer. The type must be a
primitive specialization of Consumer
for
T
, such as IntConsumer
for
Integer
.Iterator<T>
PrimitiveIterator.OfDouble
, PrimitiveIterator.OfInt
, PrimitiveIterator.OfLong
public interface PrimitiveIterator<T,T_CONS> extends Iterator<T>
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
PrimitiveIterator.OfInt.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.
org.openjdk.java.util.stream.tripwire
is set to true
then diagnostic warnings are reported if boxing of
primitive values occur when operating on primitive subtype specializations.Modifier and Type | Interface | Description |
---|---|---|
static interface |
PrimitiveIterator.OfDouble |
An Iterator specialized for
double values. |
static interface |
PrimitiveIterator.OfInt |
An Iterator specialized for
int values. |
static interface |
PrimitiveIterator.OfLong |
An Iterator specialized for
long values. |
Modifier and Type | Method | Description |
---|---|---|
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.
|
forEachRemaining, hasNext, next, remove
void forEachRemaining(T_CONS action)
action
- The action to be performed for each elementNullPointerException
- if the specified action is null Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2017, Oracle and/or its affiliates. 500 Oracle Parkway
Redwood Shores, CA 94065 USA. All rights reserved.
DRAFT 9-internal+0-adhoc.mlchung.jdk9-jdeps