Spec-Zone.ru › OpenJDK 17

Интерфейс PrimitiveIterator<T,T_CONS>

Параметры типа:
T - тип элементов, возвращаемых этим PrimitiveIterator. Тип должен быть типом-обёрткой для примитивного типа, например, Integer для примитивного типа int.
T_CONS - тип примитивного потребителя. Тип должен быть примитивным специализацией Consumer для T, например, IntConsumer для Integer.
Все суперинтерфейсы:
Iterator<T>
Все известные подинтерфейсы:
PrimitiveIterator.OfDouble, PrimitiveIterator.OfInt, PrimitiveIterator.OfLong
public interface PrimitiveIterator<T,T_CONS> extends Iterator<T>
Базовый тип для примитивных специализаций Iterator. Специализированные подтипы предоставляются для int, long и double значений.

Специализированные подтипы реализуют методы Iterator.next() и Iterator.forEachRemaining(java.util.function.Consumer) по умолчанию, преобразуя примитивные значения в экземпляры соответствующего обертывающего класса. Такое преобразование может снизить преимущества, полученные при использовании примитивных специализаций. Для избежания преобразования следует использовать соответствующие методы, основанные на примитивных типах. Например, PrimitiveIterator.OfInt.nextInt() и PrimitiveIterator.OfInt.forEachRemaining(java.util.function.IntConsumer) следует использовать вместо PrimitiveIterator.OfInt.next() и PrimitiveIterator.OfInt.forEachRemaining(java.util.function.Consumer).

Итерация примитивных значений с использованием методов преобразования в объекты-обёртки next() и forEachRemaining() не влияет на порядок, в котором встречаются значения, преобразованные в объекты-обёртки.

Примечание по реализации:
Если системная переменная org.openjdk.java.util.stream.tripwire установлена в значение true, то при работе с примитивными специализированными подтипами будут выдаваться диагностические предупреждения, если происходит преобразование примитивных значений в объекты-обёртки.
С:
1.8

Краткое описание вложенных классов

Модификатор и тип Интерфейс Описание
static interface  PrimitiveIterator.OfDouble
Итератор, специализированный для значений double.
static interface  PrimitiveIterator.OfInt
Итератор, специализированный для значений int.
static interface  PrimitiveIterator.OfLong
Итератор, специализированный для значений long.

Краткое описание методов

Модификатор и тип Метод Описание
void forEachRemaining(T_CONS action)
Выполняет заданное действие для каждого оставшегося элемента, пока все элементы не будут обработаны или действие не вызовет исключение.

Методы, объявленные в интерфейсе java.util.Iterator

forEachRemaining, hasNext, next, remove

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

forEachRemaining

void forEachRemaining(T_CONS action)
Выполняет заданное действие для каждого оставшегося элемента, пока все элементы не будут обработаны или действие не вызовет исключение. Действия выполняются в порядке итерации, если этот порядок указан. Исключение, сгенерированное действием, передаётся вызывающей стороне.

Поведение итератора не определено, если действие изменяет источник элементов каким-либо образом (даже вызывая метод remove или другие методы-мутаторы подтипов Iterator ), если только в переопределяемом классе не указана политика одновременного изменения.

Последующее поведение итератора не определено, если действие выбросит исключение.

Параметры:
action - действие, которое должно выполняться для каждого элемента
Исключения:
NullPointerException - если заданное действие равно null

© 1993, 2021, 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/17/docs/api/java.base/java/util/PrimitiveIterator.html

Spec-Zone.ru

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