OfPrimitive

interface OfPrimitive<T : Any!, T_CONS : Any!, T_SPLITR : Spliterator.OfPrimitive<T, T_CONS, T_SPLITR>!> : Spliterator<T>
java.util.Spliterator.OfPrimitive

A Spliterator specialized for primitive values.
Requires API level 24 (Android 7.0, Nougat)

Summary

Inherited constants
Public methods
open Unit
forEachRemaining(action: T_CONS)

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.

abstract Boolean
tryAdvance(action: T_CONS)

If a remaining element exists, performs the given action on it, returning true; else returns false.

abstract T_SPLITR

If this spliterator can be partitioned, returns a Spliterator covering elements, that will, upon return from this method, not be covered by this Spliterator.

Inherited functions

Public methods

forEachRemaining

added in API level 24
open fun forEachRemaining(action: T_CONS): Unit

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 is #ORDERED, actions are performed in encounter order. Exceptions thrown by the action are relayed to the caller.
Requires API level 24 (Android 7.0, Nougat)

Parameters
action T_CONS: The action
Exceptions
NullPointerException if the specified action is null

tryAdvance

added in API level 24
abstract fun tryAdvance(action: T_CONS): Boolean

If a remaining element exists, performs the given action on it, returning true; else returns false. If this Spliterator is #ORDERED the action is performed on the next element in encounter order. Exceptions thrown by the action are relayed to the caller.
Requires API level 24 (Android 7.0, Nougat)

Parameters
action T_CONS: The action
Return
Boolean: false if no remaining elements existed upon entry to this method, else true.
Exceptions
NullPointerException if the specified action is null

trySplit

added in API level 24
abstract fun trySplit(): T_SPLITR

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 #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 return null. Upon non-null return:

  • the value reported for estimateSize() before splitting, must, after splitting, be greater than or equal to estimateSize() for this and the returned Spliterator; and
  • if this Spliterator is SUBSIZED, then estimateSize() for this spliterator before splitting must be equal to the sum of estimateSize() 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.
Requires API level 24 (Android 7.0, Nougat) Requires API level 24 (Android 7.0, Nougat)

Return
T_SPLITR: a Spliterator covering some portion of the elements, or null if this spliterator cannot be split