Interface Spliterator.OfInt
- All Superinterfaces:
Spliterator<Integer>
,Spliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
- All Known Implementing Classes:
Spliterators.AbstractIntSpliterator
- Enclosing interface:
Spliterator<T>
int
values.- Since:
- 1.8
-
Nested Class Summary
Nested classes/interfaces inherited from interface java.util.Spliterator
Spliterator.OfDouble, Spliterator.OfInt, Spliterator.OfLong, Spliterator.OfPrimitive<T, T_CONS, T_SPLITR extends Spliterator.OfPrimitive<T,
T_CONS, T_SPLITR>> -
Field Summary
Fields inherited from interface java.util.Spliterator
CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
forEachRemaining
(Consumer<? super Integer> action) Performs the given action for each remaining element, sequentially in the current thread, until all elements have been processed or the action throws an exception.default void
forEachRemaining
(IntConsumer action) Performs the given action for each remaining element, sequentially in the current thread, until all elements have been processed or the action throws an exception.default boolean
tryAdvance
(Consumer<? super Integer> action) If a remaining element exists: performs the given action on it, returningtrue
; else returnsfalse
.boolean
tryAdvance
(IntConsumer action) If a remaining element exists, performs the given action on it, returningtrue
; else returnsfalse
.trySplit()
If this spliterator can be partitioned, returns a Spliterator covering elements, that will, upon return from this method, not be covered by this Spliterator.Methods inherited from interface java.util.Spliterator
characteristics, estimateSize, getComparator, getExactSizeIfKnown, hasCharacteristics
-
Method Details
-
trySplit
Spliterator.OfInt trySplit()Description copied from interface:Spliterator
If this spliterator can be partitioned, returns a Spliterator covering elements, that will, upon return from this method, not be covered by this Spliterator.If this Spliterator is
Spliterator.ORDERED
, the returned Spliterator must cover a strict prefix of the elements.Unless this Spliterator covers an infinite number of elements, repeated calls to
trySplit()
must eventually returnnull
. Upon non-null return:- the value reported for
estimateSize()
before splitting, must, after splitting, be greater than or equal toestimateSize()
for this and the returned Spliterator; and - if this Spliterator is
SUBSIZED
, thenestimateSize()
for this spliterator before splitting must be equal to the sum ofestimateSize()
for this and the returned Spliterator after splitting.
This method may return
null
for any reason, including emptiness, inability to split after traversal has commenced, data structure constraints, and efficiency considerations.- Specified by:
trySplit
in interfaceSpliterator<Integer>
- Specified by:
trySplit
in interfaceSpliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
- Returns:
- a
Spliterator
covering some portion of the elements, ornull
if this spliterator cannot be split
- the value reported for
-
tryAdvance
Description copied from interface:Spliterator.OfPrimitive
If a remaining element exists, performs the given action on it, returningtrue
; else returnsfalse
. If this Spliterator isSpliterator.ORDERED
the action is performed on the next element in encounter order. Exceptions thrown by the action are relayed to the caller.Subsequent behavior of a spliterator is unspecified if the action throws an exception.
- Specified by:
tryAdvance
in interfaceSpliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
- Parameters:
action
- The action- Returns:
false
if no remaining elements existed upon entry to this method, elsetrue
.
-
forEachRemaining
Description copied from interface:Spliterator.OfPrimitive
Performs the given action for each remaining element, sequentially in the current thread, until all elements have been processed or the action throws an exception. If this Spliterator isSpliterator.ORDERED
, actions are performed in encounter order. Exceptions thrown by the action are relayed to the caller.Subsequent behavior of a spliterator is unspecified if the action throws an exception.
- Specified by:
forEachRemaining
in interfaceSpliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
- Parameters:
action
- The action
-
tryAdvance
If a remaining element exists: performs the given action on it, returningtrue
; else returnsfalse
. If this Spliterator isSpliterator.ORDERED
the action is performed on the next element in encounter order. Exceptions thrown by the action are relayed to the caller.Subsequent behavior of a spliterator is unspecified if the action throws an exception.
- Specified by:
tryAdvance
in interfaceSpliterator<Integer>
- Implementation Requirements:
- If the action is an instance of
IntConsumer
then it is cast toIntConsumer
and passed totryAdvance(java.util.function.IntConsumer)
; otherwise the action is adapted to an instance ofIntConsumer
, by boxing the argument ofIntConsumer
, and then passed totryAdvance(java.util.function.IntConsumer)
. - Parameters:
action
- The action whose operation is performed at-most once- Returns:
false
if no remaining elements existed upon entry to this method, elsetrue
.
-
forEachRemaining
Performs the given action for each remaining element, sequentially in the current thread, until all elements have been processed or the action throws an exception. If this Spliterator isSpliterator.ORDERED
, actions are performed in encounter order. Exceptions thrown by the action are relayed to the caller.Subsequent behavior of a spliterator is unspecified if the action throws an exception.
- Specified by:
forEachRemaining
in interfaceSpliterator<Integer>
- Implementation Requirements:
- If the action is an instance of
IntConsumer
then it is cast toIntConsumer
and passed toforEachRemaining(java.util.function.IntConsumer)
; otherwise the action is adapted to an instance ofIntConsumer
, by boxing the argument ofIntConsumer
, and then passed toforEachRemaining(java.util.function.IntConsumer)
. - Parameters:
action
- The action
-