# Uses of Interface
java.util.Spliterator

Packages that use Spliterator
Package
Description
java.lang
Provides classes that are fundamental to the design of the Java programming language.
java.util
Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
java.util.concurrent
Utility classes commonly useful in concurrent programming.
java.util.stream
Classes to support functional-style operations on streams of elements, such as map-reduce transformations on collections.
jdk.incubator.foreign
Classes to support low-level and efficient foreign memory/function access, directly from Java.

## Uses of Spliterator in java.lang

Methods in java.lang that return Spliterator
Modifier and Type
Method
Description
`default Spliterator<T>`
Iterable.`spliterator()`
Creates a `Spliterator` over the elements described by this `Iterable`.

## Uses of Spliterator in java.util

Subinterfaces of Spliterator in java.util
Modifier and Type
Interface
Description
`static interface`
`Spliterator.OfDouble`
A Spliterator specialized for `double` values.
`static interface`
`Spliterator.OfInt`
A Spliterator specialized for `int` values.
`static interface`
`Spliterator.OfLong`
A Spliterator specialized for `long` values.
`static interface`
`Spliterator.OfPrimitive<T,T_CONS,T_SPLITR extends Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>>`
A Spliterator specialized for primitive values.
Classes in java.util that implement Spliterator
Modifier and Type
Class
Description
`static class`
`Spliterators.AbstractDoubleSpliterator`
An abstract `Spliterator.OfDouble` that implements `trySplit` to permit limited parallelism.
`static class`
`Spliterators.AbstractIntSpliterator`
An abstract `Spliterator.OfInt` that implements `trySplit` to permit limited parallelism.
`static class`
`Spliterators.AbstractLongSpliterator`
An abstract `Spliterator.OfLong` that implements `trySplit` to permit limited parallelism.
`static class`
`Spliterators.AbstractSpliterator<T>`
An abstract `Spliterator` that implements `trySplit` to permit limited parallelism.
Methods in java.util that return Spliterator
Modifier and Type
Method
Description
`static <T> Spliterator<T>`
Spliterators.`emptySpliterator()`
Creates an empty `Spliterator`
`Spliterator<E>`
ArrayDeque.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this deque.
`Spliterator<E>`
ArrayList.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this list.
`static <T> Spliterator<T>`
Arrays.`spliterator(T[] array)`
Returns a `Spliterator` covering all of the specified array.
`static <T> Spliterator<T>`
Arrays.`spliterator(T[] array, int startInclusive, int endExclusive)`
Returns a `Spliterator` covering the specified range of the specified array.
`default Spliterator<E>`
Collection.`spliterator()`
Creates a `Spliterator` over the elements in this collection.
`Spliterator<E>`
HashSet.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this set.
`Spliterator<E>`
LinkedHashSet.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this set.
`Spliterator<E>`
LinkedList.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this list.
`default Spliterator<E>`
List.`spliterator()`
Creates a `Spliterator` over the elements in this list.
`final Spliterator<E>`
PriorityQueue.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this queue.
`default Spliterator<E>`
Set.`spliterator()`
Creates a `Spliterator` over the elements in this set.
`default Spliterator<E>`
SortedSet.`spliterator()`
Creates a `Spliterator` over the elements in this sorted set.
`static <T> Spliterator<T>`
Spliterators.`spliterator(Object[] array, int additionalCharacteristics)`
Creates a `Spliterator` covering the elements of a given array, using a customized set of spliterator characteristics.
`static <T> Spliterator<T>`
Spliterators.`spliterator(Object[] array, int fromIndex, int toIndex, int additionalCharacteristics)`
Creates a `Spliterator` covering a range of elements of a given array, using a customized set of spliterator characteristics.
`static <T> Spliterator<T>`
Spliterators.`spliterator(Collection<? extends T> c, int characteristics)`
Creates a `Spliterator` using the given collection's `Collection.iterator()` as the source of elements, and reporting its `Collection.size()` as its initial size.
`static <T> Spliterator<T>`
Spliterators.`spliterator(Iterator<? extends T> iterator, long size, int characteristics)`
Creates a `Spliterator` using a given `Iterator` as the source of elements, and with a given initially reported size.
`Spliterator<E>`
TreeSet.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this set.
`Spliterator<E>`
Vector.`spliterator()`
Creates a late-binding and fail-fast `Spliterator` over the elements in this list.
`static <T> Spliterator<T>`
Spliterators.`spliteratorUnknownSize(Iterator<? extends T> iterator, int characteristics)`
Creates a `Spliterator` using a given `Iterator` as the source of elements, with no initial size estimate.
`Spliterator<T>`
Spliterator.`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.
`Spliterator<T>`
Spliterators.AbstractSpliterator.`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 in java.util with parameters of type Spliterator
Modifier and Type
Method
Description
`static <T> Iterator<T>`
Spliterators.`iterator(Spliterator<? extends T> spliterator)`
Creates an `Iterator` from a `Spliterator`.

## Uses of Spliterator in java.util.concurrent

Methods in java.util.concurrent that return Spliterator
Modifier and Type
Method
Description
`Spliterator<E>`
ArrayBlockingQueue.`spliterator()`
Returns a `Spliterator` over the elements in this queue.
`Spliterator<E>`
ConcurrentLinkedDeque.`spliterator()`
Returns a `Spliterator` over the elements in this deque.
`Spliterator<E>`
ConcurrentLinkedQueue.`spliterator()`
Returns a `Spliterator` over the elements in this queue.
`Spliterator<E>`
ConcurrentSkipListSet.`spliterator()`
Returns a `Spliterator` over the elements in this set.
`Spliterator<E>`
CopyOnWriteArrayList.`spliterator()`
Returns a `Spliterator` over the elements in this list.
`Spliterator<E>`
CopyOnWriteArraySet.`spliterator()`
Returns a `Spliterator` over the elements in this set in the order in which these elements were added.
`Spliterator<E>`
LinkedBlockingDeque.`spliterator()`
Returns a `Spliterator` over the elements in this deque.
`Spliterator<E>`
LinkedBlockingQueue.`spliterator()`
Returns a `Spliterator` over the elements in this queue.
`Spliterator<E>`
LinkedTransferQueue.`spliterator()`
Returns a `Spliterator` over the elements in this queue.
`Spliterator<E>`
PriorityBlockingQueue.`spliterator()`
Returns a `Spliterator` over the elements in this queue.
`Spliterator<E>`
SynchronousQueue.`spliterator()`
Returns an empty spliterator in which calls to `trySplit` always return `null`.

## Uses of Spliterator in java.util.stream

Methods in java.util.stream that return Spliterator
Modifier and Type
Method
Description
`Spliterator<T>`
BaseStream.`spliterator()`
Returns a spliterator for the elements of this stream.
Methods in java.util.stream with parameters of type Spliterator
Modifier and Type
Method
Description
`static <T> Stream<T>`
StreamSupport.`stream(Spliterator<T> spliterator, boolean parallel)`
Creates a new sequential or parallel `Stream` from a `Spliterator`.
Method parameters in java.util.stream with type arguments of type Spliterator
Modifier and Type
Method
Description
`static <T> Stream<T>`
StreamSupport.`stream(Supplier<? extends Spliterator<T>> supplier, int characteristics, boolean parallel)`
Creates a new sequential or parallel `Stream` from a `Supplier` of `Spliterator`.

## Uses of Spliterator in jdk.incubator.foreign

Methods in jdk.incubator.foreign that return Spliterator
Modifier and Type
Method
Description
`Spliterator<MemorySegment>`
MemorySegment.`spliterator(MemoryLayout elementLayout)`
Returns a spliterator for this memory segment.