Spec-Zone.ru › OpenJDK 27

Класс StreamSupport

java.lang.Object
java.util.stream.StreamSupport
public final class StreamSupport extends Object
Низкоуровневые вспомогательные методы для создания и обработки потоков.

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

Начиная с:
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.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, является ли другой объект «равным» этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени.

Подробное описание методов

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).

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

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

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее дочерних компаний в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API