Module java.base
Package java.util

## Interface Spliterator.OfLong

- All Superinterfaces:
    `Spliterator<Long>`, `Spliterator.OfPrimitive<Long,​LongConsumer,​Spliterator.OfLong>`
  All Known Implementing Classes:
    `Spliterators.AbstractLongSpliterator`
  Enclosing interface:
    Spliterator<T>

      public static interface Spliterator.OfLong
      extends Spliterator.OfPrimitive<Long,​LongConsumer,​Spliterator.OfLong>

  A Spliterator specialized for `long` values.
  Since:
    1.8

- - ### Nested Class Summary

    - ### Nested classes/interfaces declared in 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 declared in interface java.util.Spliterator

      `CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED`

  - ### Method Summary

    All Methods Instance Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | `forEachRemaining​(Consumer<? super Long> 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 Long> action)` | If a remaining element exists, performs the given action on it, returning `true`; else returns `false`.

    - ### Methods declared in interface java.util.Spliterator

      `characteristics, estimateSize, getComparator, getExactSizeIfKnown, hasCharacteristics, trySplit`

    - ### Methods declared in interface java.util.Spliterator.OfPrimitive

      `forEachRemaining, tryAdvance`

- - ### Method Detail

    - #### tryAdvance

          default boolean tryAdvance​(Consumer<? super Long> action)

      If a remaining element exists, performs the given action on it, returning `true`; else returns `false`. If this Spliterator is `Spliterator.ORDERED` the action is performed on the next element in encounter order. Exceptions thrown by the action are relayed to the caller.
      Specified by:
        `tryAdvance` in interface `Spliterator<Long>`
      Implementation Requirements:
        If the action is an instance of `LongConsumer` then it is cast to `LongConsumer` and passed to `Spliterator.OfPrimitive.tryAdvance(java.util.function.LongConsumer)`; otherwise the action is adapted to an instance of `LongConsumer`, by boxing the argument of `LongConsumer`, and then passed to `Spliterator.OfPrimitive.tryAdvance(java.util.function.LongConsumer)`.
      Parameters:
        `action` - The action
      Returns:
        `false` if no remaining elements existed upon entry to this method, else `true`.

    - #### forEachRemaining

          default void forEachRemaining​(Consumer<? super Long> 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. If this Spliterator is `Spliterator.ORDERED`, actions are performed in encounter order. Exceptions thrown by the action are relayed to the caller.
      Specified by:
        `forEachRemaining` in interface `Spliterator<Long>`
      Implementation Requirements:
        If the action is an instance of `LongConsumer` then it is cast to `LongConsumer` and passed to `Spliterator.OfPrimitive.forEachRemaining(java.util.function.LongConsumer)`; otherwise the action is adapted to an instance of `LongConsumer`, by boxing the argument of `LongConsumer`, and then passed to `Spliterator.OfPrimitive.forEachRemaining(java.util.function.LongConsumer)`.
      Parameters:
        `action` - The action