Интерфейс Spliterator.OfLong
- Все суперинтерфейсы:
Spliterator<Long>, Spliterator.OfPrimitive<Long, LongConsumer, Spliterator.OfLong>
- Все известные реализующие классы:
Spliterators.AbstractLongSpliterator
- Вложенный интерфейс:
Spliterator<T>
public static interface Spliterator.OfLong extends Spliterator.OfPrimitive<Long, LongConsumer, Spliterator.OfLong>
Spliterator, специализированный для значений типа
long.- Начиная с версии:
- 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 Spliterator.SORTED с помощью Comparator, возвращает этот Comparator. |
default long |
getExactSizeIfKnown() |
Вспомогательный метод, возвращающий Spliterator.estimateSize(), если этот Spliterator имеет характеристику Spliterator.SIZED, и -1 в противном случае. |
default boolean |
hasCharacteristics |
Возвращает true, если Spliterator.characteristics() этого Spliterator содержат все заданные характеристики. |
Spliterator |
trySplit() |
Если этот сплитератор можно разделить, возвращает Spliterator, охватывающий элементы, которые после возврата из этого метода больше не будут охватываться данным Spliterator. |
Методы, объявленные в интерфейсе Spliterator.OfPrimitive
forEachRemaining, tryAdvance | Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
forEachRemaining |
Последовательно выполняет указанное действие для каждого оставшегося элемента в текущем потоке, пока не будут обработаны все элементы или пока действие не вызовет исключение. |
boolean |
tryAdvance |
Если остался элемент, выполняет над ним указанное действие и возвращает true; в противном случае возвращает false. |
Подробное описание методов
tryAdvance
default boolean tryAdvance(Consumer<? super Long> action)
Если остался элемент, выполняет над ним указанное действие и возвращает
true; в противном случае возвращает false. Если этот Spliterator имеет характеристику Spliterator.ORDERED, действие выполняется над следующим элементом в порядке встречи. Исключения, выброшенные действием, передаются вызывающему коду. Последующее поведение сплитератора не определено, если действие выбрасывает исключение.
- Определено в:
-
tryAdvanceв интерфейсеSpliterator<Long> - Требования к реализации:
- Если действие является экземпляром
LongConsumer, оно приводится к типуLongConsumerи передается вSpliterator.OfPrimitive.tryAdvance(java.util.function.LongConsumer); в противном случае действие преобразуется в экземплярLongConsumerпутем упаковки аргументаLongConsumer, а затем передается вSpliterator.OfPrimitive.tryAdvance(java.util.function.LongConsumer). - Параметры:
-
action— действие, которое выполняется не более одного раза - Возвращает:
-
false, если на момент входа в этот метод не осталось элементов, иначеtrue.
forEachRemaining
default void forEachRemaining(Consumer<? super Long> action)
Последовательно выполняет указанное действие для каждого оставшегося элемента в текущем потоке, пока не будут обработаны все элементы или пока действие не вызовет исключение. Если этот Spliterator имеет характеристику
Spliterator.ORDERED, действия выполняются в порядке встречи. Исключения, выброшенные действием, передаются вызывающему коду. Последующее поведение сплитератора не определено, если действие выбрасывает исключение.
- Определено в:
-
forEachRemainingв интерфейсеSpliterator<Long> - Требования к реализации:
- Если действие является экземпляром
LongConsumer, оно приводится к типуLongConsumerи передается вSpliterator.OfPrimitive.forEachRemaining(java.util.function.LongConsumer); в противном случае действие преобразуется в экземплярLongConsumerпутем упаковки аргументаLongConsumer, а затем передается вSpliterator.OfPrimitive.forEachRemaining(java.util.function.LongConsumer). - Параметры:
-
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.