Интерфейс Spliterator.OfDouble
- Все супер-интерфейсы:
Spliterator<Double>, Spliterator.OfPrimitive<Double, DoubleConsumer, Spliterator.OfDouble>
- Все известные реализующие классы:
Spliterators.AbstractDoubleSpliterator
- Внешний интерфейс:
Spliterator<T>
public static interface Spliterator.OfDouble extends Spliterator.OfPrimitive<Double, DoubleConsumer, Spliterator.OfDouble>
Spliterator, специализированный для значений
double.- Начиная с:
- 1.8
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в интерфейсе Spliterator
Spliterator.OfDouble, Spliterator.OfInt, Spliterator.OfLong, Spliterator.OfPrimitive<T, T_CONS, T_SPLITR> | Модификатор и тип | Интерфейс | Описание |
|---|---|---|
static interface |
Spliterator.OfDouble |
Spliterator, специализированный для значений double. |
static interface |
Spliterator.OfInt |
Spliterator, специализированный для значений int. |
static interface |
Spliterator.OfLong |
Spliterator, специализированный для значений long. |
static interface |
Spliterator.OfPrimitive<T, T_CONS, T_SPLITR extends Spliterator.OfPrimitive<T, |
Spliterator, специализированный для примитивных значений. |
Краткое описание полей
Поля, объявленные в интерфейсе Spliterator
CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
CONCURRENT |
Значение характеристики, указывающее, что источник элементов можно безопасно изменять одновременно (добавлять, заменять и/или удалять элементы) в нескольких потоках без внешней синхронизации. |
static final int |
DISTINCT |
Значение характеристики, указывающее, что для каждой пары встреченных элементов x, y, !x.equals(y). |
static final int |
IMMUTABLE |
Значение характеристики, указывающее, что структуру источника элементов нельзя изменять: элементы нельзя добавлять, заменять или удалять, поэтому такие изменения не могут произойти во время обхода. |
static final int |
NONNULL |
Значение характеристики, указывающее, что источник гарантирует, что встреченные элементы не будут null. |
static final int |
ORDERED |
Значение характеристики, указывающее, что для элементов определён порядок обхода. |
static final int |
SIZED |
Значение характеристики, указывающее, что значение, возвращаемое методом estimateSize() до обхода или разбиения, представляет конечный размер, который при отсутствии структурных изменений источника точно соответствует количеству элементов, которые будут обнаружены при полном обходе. |
static final int |
SORTED |
Значение характеристики, указывающее, что порядок обхода соответствует заданному порядку сортировки. |
static final int |
SUBSIZED |
Значение характеристики, указывающее, что все Spliterator, полученные в результате вызова trySplit(), будут обладать характеристиками Spliterator.SIZED и Spliterator.SUBSIZED. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
forEachRemaining |
Последовательно в текущем потоке выполняет указанное действие для каждого оставшегося элемента, пока не будут обработаны все элементы или действие не выбросит исключение. |
default boolean |
tryAdvance |
Если остался хотя бы один элемент, выполняет для него указанное действие и возвращает true; в противном случае возвращает false. |
Методы, объявленные в интерфейсе Spliterator
characteristics, estimateSize, getComparator, getExactSizeIfKnown, hasCharacteristics, trySplit | Модификатор и тип | Метод | Описание |
|---|---|---|
int |
characteristics() |
Возвращает набор характеристик этого Spliterator и его элементов. |
long |
estimateSize() |
Возвращает оценку количества элементов, которые будут обнаружены при обходе с помощью метода Spliterator.forEachRemaining(Consumer), или возвращает Long.MAX_VALUE, если количество бесконечно, неизвестно или его вычисление слишком затратно. |
default Comparator |
getComparator() |
Если источник этого Spliterator отсортирован по Comparator (характеристика Spliterator.SORTED), возвращает этот Comparator. |
default long |
getExactSizeIfKnown() |
Вспомогательный метод, который возвращает Spliterator.estimateSize(), если этот Spliterator имеет характеристику Spliterator.SIZED, и -1 в противном случае. |
default boolean |
hasCharacteristics |
Возвращает true, если Spliterator.characteristics() этого Spliterator содержат все указанные характеристики. |
Spliterator |
trySplit() |
Если этот spliterator можно разделить, возвращает Spliterator, охватывающий элементы, которые после возврата из этого метода больше не будут охватываться данным Spliterator. |
Методы, объявленные в интерфейсе Spliterator.OfPrimitive
forEachRemaining, tryAdvance | Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
forEachRemaining |
Последовательно в текущем потоке выполняет указанное действие для каждого оставшегося элемента, пока не будут обработаны все элементы или действие не выбросит исключение. |
boolean |
tryAdvance |
Если остался хотя бы один элемент, выполняет для него указанное действие и возвращает true; в противном случае возвращает false. |
Подробное описание методов
tryAdvance
default boolean tryAdvance(Consumer<? super Double> action)
Если остался хотя бы один элемент, выполняет для него указанное действие и возвращает
true; в противном случае возвращает false. Если этот Spliterator имеет характеристику Spliterator.ORDERED, действие выполняется для следующего элемента в порядке обхода. Исключения, выброшенные действием, передаются вызывающему коду. Дальнейшее поведение spliterator не определено, если действие выбрасывает исключение.
- Указано в:
-
tryAdvanceв интерфейсеSpliterator<Double> - Требования к реализации:
- Если действие является экземпляром
DoubleConsumer, оно приводится к типуDoubleConsumerи передаётся методуSpliterator.OfPrimitive.tryAdvance(java.util.function.DoubleConsumer); в противном случае действие адаптируется к экземпляруDoubleConsumer: аргументDoubleConsumerупаковывается, после чего результат передаётся методуSpliterator.OfPrimitive.tryAdvance(java.util.function.DoubleConsumer). - Параметры:
-
action— действие, операция которого выполняется не более одного раза - Возвращает:
-
false, если при входе в этот метод не осталось элементов; в противном случае —true.
forEachRemaining
default void forEachRemaining(Consumer<? super Double> action)
Последовательно в текущем потоке выполняет указанное действие для каждого оставшегося элемента, пока не будут обработаны все элементы или действие не выбросит исключение. Если этот Spliterator имеет характеристику
Spliterator.ORDERED, действия выполняются в порядке обхода. Исключения, выброшенные действием, передаются вызывающему коду. Дальнейшее поведение spliterator не определено, если действие выбрасывает исключение.
- Указано в:
-
forEachRemainingв интерфейсеSpliterator<Double> - Требования к реализации:
- Если действие является экземпляром
DoubleConsumer, оно приводится к типуDoubleConsumerи передаётся методуSpliterator.OfPrimitive.forEachRemaining(java.util.function.DoubleConsumer); в противном случае действие адаптируется к экземпляруDoubleConsumer: аргументDoubleConsumerупаковывается, после чего результат передаётся методуSpliterator.OfPrimitive.forEachRemaining(java.util.function.DoubleConsumer). - Параметры:
-
action— действие
© 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.