Interface IntSpliterator
- All Superinterfaces:
Spliterator<Integer>
,Spliterator.OfInt
,Spliterator.OfPrimitive<Integer,
IntConsumer, Spliterator.OfInt>
- All Known Implementing Classes:
AbstractIntSpliterator
,IntBigSpliterators.AbstractIndexBasedSpliterator
,IntBigSpliterators.EarlyBindingSizeIndexBasedSpliterator
,IntBigSpliterators.LateBindingSizeIndexBasedSpliterator
,IntSpliterators.AbstractIndexBasedSpliterator
,IntSpliterators.EarlyBindingSizeIndexBasedSpliterator
,IntSpliterators.EmptySpliterator
,IntSpliterators.LateBindingSizeIndexBasedSpliterator
Spliterator
; provides an additional methods to avoid (un)boxing, and the
possibility to skip elements.- Since:
- 8.5.0
- Author:
- C. Sean Young <csyoung@google.com>
- See Also:
-
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
(IntConsumer action) Performs the given action for each remaining element until all elements have been processed or the action throws an exception.default void
forEachRemaining
(Consumer<? super Integer> action) Deprecated.Please use the corresponding type-specific method instead.default IntComparator
default long
skip
(long n) Skips the given number of elements.default boolean
tryAdvance
(IntConsumer action) Attempts to perform the action on the next element, or do nothing but returnfalse
if there are no remaining elements.default boolean
tryAdvance
(Consumer<? super Integer> action) Deprecated.Please use the corresponding type-specific method instead.trySplit()
Methods inherited from interface java.util.Spliterator
characteristics, estimateSize, getExactSizeIfKnown, hasCharacteristics
Methods inherited from interface java.util.Spliterator.OfInt
forEachRemaining, tryAdvance
-
Method Details
-
tryAdvance
Deprecated.Please use the corresponding type-specific method instead.- Specified by:
tryAdvance
in interfaceSpliterator<Integer>
- Specified by:
tryAdvance
in interfaceSpliterator.OfInt
-
tryAdvance
Attempts to perform the action on the next element, or do nothing but returnfalse
if there are no remaining elements.WARNING: Overriding this method is almost always a mistake, as this overload only exists to disambiguate. Instead, override the
tryAdvance()
overload that uses the JDK's primitive consumer type (e.g.,IntConsumer
).
If Java supported final default methods, this would be one, but sadly it does not.If you checked and are overriding the version with
java.util.function.XConsumer
, and still see this warning, then your IDE is incorrectly conflating this method with the proper method to override, and you can safely ignore this message.- Parameters:
action
- the action to be performed on the next element.- Returns:
- whether there was a next element the action was performed on
- See Also:
-
forEachRemaining
Deprecated.Please use the corresponding type-specific method instead.- Specified by:
forEachRemaining
in interfaceSpliterator<Integer>
- Specified by:
forEachRemaining
in interfaceSpliterator.OfInt
-
forEachRemaining
Performs the given action for each remaining element until all elements have been processed or the action throws an exception.WARNING: Overriding this method is almost always a mistake, as this overload only exists to disambiguate. Instead, override the
forEachRemaining()
overload that uses the JDK's primitive consumer type (e.g.IntConsumer
).If Java supported final default methods, this would be one, but sadly it does not.
If you checked and are overriding the version with
java.util.function.XConsumer
, and still see this warning, then your IDE is incorrectly conflating this method with the proper method to override, and you can safely ignore this message.- Parameters:
action
- the action to be performed for each element.- See Also:
-
skip
default long skip(long n) Skips the given number of elements.The effect of this call is exactly the same as that of calling
tryAdvance(java.util.function.Consumer<? super java.lang.Integer>)
forn
times (possibly stopping iftryAdvance(java.util.function.Consumer<? super java.lang.Integer>)
returns false). The action called will do nothing; elements will be discarded.- Parameters:
n
- the number of elements to skip.- Returns:
- the number of elements actually skipped.
- See Also:
- Implementation Specification:
- This default implementation is linear in n. It is expected concrete implementations that are capable of it will override it to run lower time, but be prepared for linear time.
-
trySplit
IntSpliterator trySplit()- Specified by:
trySplit
in interfaceSpliterator<Integer>
- Specified by:
trySplit
in interfaceSpliterator.OfInt
- Specified by:
trySplit
in interfaceSpliterator.OfPrimitive<Integer,
IntConsumer, Spliterator.OfInt> - API Notes:
- Note that this specification strengthens the one given in
Spliterator.trySplit()
.
-
getComparator
- Specified by:
getComparator
in interfaceSpliterator<Integer>
- API Notes:
- Note that this specification strengthens the one given in
Spliterator.getComparator()
.
-