Интерфейс Spliterator.OfInt
- Все суперинтерфейсы:
Spliterator<Integer>, Spliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
- Все известные реализующие классы:
Spliterators.AbstractIntSpliterator
- Внешний интерфейс:
Spliterator<T>
public static interface Spliterator.OfInt extends Spliterator.OfPrimitive<Integer, IntConsumer, Spliterator.OfInt>
Spliterator, специализированный для значений типа
int.- С версии:
- 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. |
Методы, объявленные в интерфейсе Spliterator.OfPrimitive
forEachRemaining, tryAdvance | Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
forEachRemaining |
Выполняет указанное действие для каждого оставшегося элемента последовательно в текущем потоке, пока не будут обработаны все элементы или действие не вызовет исключение. |
boolean |
tryAdvance |
Если существует оставшийся элемент, выполняет для него указанное действие и возвращает true; в противном случае возвращает false. |
Подробное описание методов
tryAdvance
default boolean tryAdvance(Consumer<? super Integer> action)
Если существует оставшийся элемент, выполняет для него указанное действие и возвращает
true; в противном случае возвращает false. Если этот Spliterator имеет характеристику Spliterator.ORDERED, действие выполняется для следующего элемента в порядке следования. Исключения, выброшенные действием, передаются вызывающему коду. Последующее поведение spliterator не определено, если действие выбрасывает исключение.
- Определено в:
-
tryAdvanceв интерфейсеSpliterator<Integer> - Требования к реализации:
- Если действие является экземпляром
IntConsumer, оно приводится к типуIntConsumerи передаётся вSpliterator.OfPrimitive.tryAdvance(java.util.function.IntConsumer); в противном случае действие преобразуется в экземплярIntConsumerпутём упаковки аргументаIntConsumer, а затем передаётся вSpliterator.OfPrimitive.tryAdvance(java.util.function.IntConsumer). - Параметры:
-
action— действие, операция которого выполняется не более одного раза - Возвращает:
-
false, если на момент входа в этот метод оставшихся элементов не было; в противном случае —true.
forEachRemaining
default void forEachRemaining(Consumer<? super Integer> action)
Выполняет указанное действие для каждого оставшегося элемента последовательно в текущем потоке, пока не будут обработаны все элементы или действие не вызовет исключение. Если этот Spliterator имеет характеристику
Spliterator.ORDERED, действия выполняются в порядке следования элементов. Исключения, выброшенные действием, передаются вызывающему коду. Последующее поведение spliterator не определено, если действие выбрасывает исключение.
- Определено в:
-
forEachRemainingв интерфейсеSpliterator<Integer> - Требования к реализации:
- Если действие является экземпляром
IntConsumer, оно приводится к типуIntConsumerи передаётся вSpliterator.OfPrimitive.forEachRemaining(java.util.function.IntConsumer); в противном случае действие преобразуется в экземплярIntConsumerпутём упаковки аргументаIntConsumer, а затем передаётся вSpliterator.OfPrimitive.forEachRemaining(java.util.function.IntConsumer). - Параметры:
-
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.