Класс StreamSupport

public final class StreamSupport
extends Object

Утилитарные методы низкого уровня для создания и обработки потоков.

Этот класс в основном предназначен для разработчиков библиотек, представляющих потоковые представления структур данных; большинство статических методов потоков, предназначенных для конечных пользователей, находятся в различных Stream классах.

Since:
1.8

Методы

Модификатор и тип Метод Описание
static DoubleStream doubleStream​(Supplier<? extends Spliterator.OfDouble> supplier, int characteristics, boolean parallel)

Создаёт новый последовательный или параллельный DoubleStream из Supplier Spliterator.OfDouble.

static DoubleStream doubleStream​(Spliterator.OfDouble spliterator, boolean parallel)

Создаёт новый последовательный или параллельный DoubleStream из Spliterator.OfDouble.

static IntStream intStream​(Supplier<? extends Spliterator.OfInt> supplier, int characteristics, boolean parallel)

Создаёт новый последовательный или параллельный IntStream из Supplier Spliterator.OfInt.

static IntStream intStream​(Spliterator.OfInt spliterator, boolean parallel)

Создаёт новый последовательный или параллельный IntStream из Spliterator.OfInt.

static LongStream longStream​(Supplier<? extends Spliterator.OfLong> supplier, int characteristics, boolean parallel)

Создаёт новый последовательный или параллельный LongStream из Supplier Spliterator.OfLong.

static LongStream longStream​(Spliterator.OfLong spliterator, boolean parallel)

Создаёт новый последовательный или параллельный LongStream из Spliterator.OfLong.

static <T> Stream<T> stream​(Supplier<? extends Spliterator<T>> supplier, int characteristics, boolean parallel)

Создаёт новый последовательный или параллельный Stream из Supplier Spliterator.

static <T> Stream<T> stream​(Spliterator<T> spliterator, boolean parallel)

Создаёт новый последовательный или параллельный Stream из Spliterator.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы

stream

public static <T> Stream<T> stream(Spliterator<T> spliterator,
                                   boolean parallel)

Создаёт новый последовательный или параллельный поток Stream из Spliterator.

Сплитератор обрабатывается, разделяется или запрашивается для оценки размера только после начала заключительной операции конвейера потоков.

Сильно рекомендуется, чтобы сплитератор сообщал о характеристике IMMUTABLE или CONCURRENT, или был позднесвязываемым. В противном случае, stream(java.util.function.Supplier, int, boolean) следует использовать для уменьшения области потенциального вмешательства в источник. См. Невмешательство для получения дополнительной информации.

Параметры типа:
T - тип элементов потока
Параметры:
spliterator - Spliterator , описывающий элементы потока
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток Stream

stream

public static <T> Stream<T> stream(Supplier<? extends Spliterator<T>> supplier,
                                   int characteristics,
                                   boolean parallel)

Создаёт новый последовательный или параллельный поток Stream из Supplier Spliterator.

Метод Supplier.get() поставщика вызывается не более одного раза и только после начала заключительной операции конвейера потоков.

Для сплитераторов, которые сообщают о характеристике IMMUTABLE или CONCURRENT, или которые являются позднесвязываемыми, вероятно, более эффективно использовать stream(java.util.Spliterator, boolean).

Использование поставщика в этом формате обеспечивает уровень косвенности, который уменьшает область потенциального вмешательства в источник. Поскольку поставщик вызывается только после начала заключительной операции, все изменения в источнике до начала заключительной операции отражаются в результате потока. См. Невмешательство для получения дополнительной информации.

Параметры типа:
T - тип элементов потока
Параметры:
supplier - Supplier Spliterator
characteristics - характеристики сплитератора предоставленного Spliterator. Характеристики должны быть равны supplier.get().characteristics(), в противном случае может произойти неопределённое поведение при запуске заключительной операции.
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток Stream
См. также:
stream(java.util.Spliterator, boolean)

intStream

public static IntStream intStream(Spliterator.OfInt spliterator,
                                  boolean parallel)

Создаёт новый последовательный или параллельный поток IntStream из Spliterator.OfInt.

Сплитератор обрабатывается, разделяется или запрашивается для оценки размера только после начала заключительной операции конвейера потоков.

Сильно рекомендуется, чтобы сплитератор сообщал о характеристике IMMUTABLE или CONCURRENT, или был позднесвязываемым. В противном случае, intStream(java.util.function.Supplier, int, boolean) следует использовать для уменьшения области потенциального вмешательства в источник. См. Невмешательство для получения дополнительной информации.

Параметры:
spliterator - Spliterator.OfInt описывающий элементы потока
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток IntStream

intStream

public static IntStream intStream(Supplier<? extends Spliterator.OfInt> supplier,
                                  int characteristics,
                                  boolean parallel)

Создаёт новый последовательный или параллельный поток IntStream из Supplier Spliterator.OfInt.

Метод Supplier.get() поставщика вызывается не более одного раза и только после начала заключительной операции конвейера потоков.

Для сплитераторов, которые сообщают о характеристике IMMUTABLE или CONCURRENT, или которые являются позднесвязываемыми, вероятно, более эффективно использовать intStream(java.util.Spliterator.OfInt, boolean).

Использование поставщика в этом формате обеспечивает уровень косвенности, который уменьшает область потенциального вмешательства в источник. Поскольку поставщик вызывается только после начала заключительной операции, все изменения в источнике до начала заключительной операции отражаются в результате потока. См. Невмешательство для получения дополнительной информации.

Параметры:
supplier - Supplier Spliterator.OfInt
characteristics - характеристики сплитератора предоставленного Spliterator.OfInt. Характеристики должны быть равны supplier.get().characteristics(), в противном случае может произойти неопределённое поведение при запуске заключительной операции.
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток IntStream
См. также:
intStream(java.util.Spliterator.OfInt, boolean)

longStream

public static LongStream longStream(Spliterator.OfLong spliterator,
                                    boolean parallel)

Создаёт новый последовательный или параллельный поток LongStream из Spliterator.OfLong.

Сплитератор обрабатывается, разделяется или запрашивается для оценки размера только после начала заключительной операции конвейера потоков.

Сильно рекомендуется, чтобы сплитератор сообщал о характеристике IMMUTABLE или CONCURRENT, или был позднесвязываемым. В противном случае, longStream(java.util.function.Supplier, int, boolean) следует использовать для уменьшения области потенциального вмешательства в источник. См. Невмешательство для получения дополнительной информации.

Параметры:
spliterator - Spliterator.OfLong описывающий элементы потока
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток LongStream

longStream

public static LongStream longStream(Supplier<? extends Spliterator.OfLong> supplier,
                                    int characteristics,
                                    boolean parallel)

Создаёт новый последовательный или параллельный поток LongStream из Supplier Spliterator.OfLong.

Метод Supplier.get() поставщика вызывается не более одного раза и только после начала заключительной операции конвейера потоков.

Для сплитераторов, которые сообщают о характеристике IMMUTABLE или CONCURRENT, или которые являются позднесвязываемыми, вероятно, более эффективно использовать longStream(java.util.Spliterator.OfLong, boolean).

Использование поставщика в этом формате обеспечивает уровень косвенности, который уменьшает область потенциального вмешательства в источник. Поскольку поставщик вызывается только после начала заключительной операции, все изменения в источнике до начала заключительной операции отражаются в результате потока. См. Невмешательство для получения дополнительной информации.

Параметры:
supplier - Supplier Spliterator.OfLong
characteristics - характеристики сплитератора предоставленного Spliterator.OfLong. Характеристики должны быть равны supplier.get().characteristics(), в противном случае может произойти неопределённое поведение при запуске заключительной операции.
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток LongStream
См. также:
longStream(java.util.Spliterator.OfLong, boolean)

doubleStream

public static DoubleStream doubleStream(Spliterator.OfDouble spliterator,
                                        boolean parallel)

Создаёт новый последовательный или параллельный поток DoubleStream из Spliterator.OfDouble.

Сплитератор обрабатывается, разделяется или запрашивается для оценки размера только после начала заключительной операции конвейера потоков.

Сильно рекомендуется, чтобы сплитератор сообщал о характеристике IMMUTABLE или CONCURRENT, или был позднесвязываемым. В противном случае, doubleStream(java.util.function.Supplier, int, boolean) следует использовать для уменьшения области потенциального вмешательства в источник. См. Невмешательство для получения дополнительной информации.

Параметры:
spliterator - Spliterator.OfDouble описывающий элементы потока
parallel - если true , то возвращаемый поток является параллельным потоком; если false , то возвращаемый поток является последовательным потоком.
Возвращаемое значение:
новый последовательный или параллельный поток DoubleStream

doubleStream

public static DoubleStream doubleStream(Supplier<? extends Spliterator.OfDouble> supplier,
                                        int characteristics,
                                        boolean parallel)

Создаёт новый последовательный или параллельный DoubleStream из Supplier Spliterator.OfDouble.

Метод Supplier.get() будет вызван на поставщике не более одного раза и только после начала терминальной операции потоковой обработки.

Для разделителей, которые сообщают о характеристике IMMUTABLE или CONCURRENT, или которые являются поздне-связанными, скорее всего, будет эффективнее использовать doubleStream(java.util.Spliterator.OfDouble, boolean).

Использование Supplier в этой форме обеспечивает уровень косвенности, который уменьшает область потенциальных помех источнику. Поскольку поставщик вызывается только после начала терминальной операции, любые изменения в источнике до начала терминальной операции отражаются в результате потока. Подробнее см. Невмешательство.

Параметры:
supplier - A Supplier of a Spliterator.OfDouble
characteristics - Характеристики разделителя предоставленного Spliterator.OfDouble. Характеристики должны быть равны supplier.get().characteristics(), в противном случае может произойти неопределённое поведение при начале терминальной операции.
parallel - если true то возвращаемый поток — параллельный поток; если false то возвращаемый поток — последовательный поток.
Возвращает:
новый последовательный или параллельный DoubleStream
См. также:
doubleStream(java.util.Spliterator.OfDouble, boolean)

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/stream/StreamSupport.html

Spec-Zone .ru
спецификации, руководства, описания, API