Spec-Zone.ru › OpenJDK 21

Интерфейс Iterable<T>

Параметры типа:
T - тип элементов, возвращаемых итератором
Все известные подинтерфейсы:
BeanContext, BeanContextServices, BlockingDeque<E>, BlockingQueue<E>, Collection<E>, Deque<E>, DirectoryStream<T>, EventSet, List<E>, NavigableSet<E>, NodeSetData<T>, Path, Queue<E>, SecureDirectoryStream<T>, SequencedCollection<E>, SequencedSet<E>, Set<E>, SortedSet<E>, TransferQueue<E>, XPathNodes
Все известные реализующие классы:
AbstractCollection, AbstractList, AbstractQueue, AbstractSequentialList, AbstractSet, ArrayBlockingQueue, ArrayDeque, ArrayList, AttributeList, BatchUpdateException, BeanContextServicesSupport, BeanContextSupport, ConcurrentHashMap.KeySetView, ConcurrentLinkedDeque, ConcurrentLinkedQueue, ConcurrentSkipListSet, CopyOnWriteArrayList, CopyOnWriteArraySet, DataTruncation, DelayQueue, DocTreePath, EnumSet, HashSet, JobStateReasons, LinkedBlockingDeque, LinkedBlockingQueue, LinkedHashSet, LinkedList, LinkedTransferQueue, PriorityBlockingQueue, PriorityQueue, RoleList, RoleUnresolvedList, RowSetWarning, SerialException, ServiceLoader, SQLClientInfoException, SQLDataException, SQLException, SQLFeatureNotSupportedException, SQLIntegrityConstraintViolationException, SQLInvalidAuthorizationSpecException, SQLNonTransientConnectionException, SQLNonTransientException, SQLRecoverableException, SQLSyntaxErrorException, SQLTimeoutException, SQLTransactionRollbackException, SQLTransientConnectionException, SQLTransientException, SQLWarning, Stack, SyncFactoryException, SynchronousQueue, SyncProviderException, TreePath, TreeSet, Vector
public interface Iterable<T>
Реализация этого интерфейса позволяет объекту быть целевым для расширенного оператора for (иногда называемого оператором "for-each").
См. Спецификацию языка Java:
14.14.2 Расширенный оператор for
С:
1.5

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

Модификатор и тип Метод Описание
default void forEach(Consumer<? super T> action)
Выполняет заданное действие для каждого элемента Iterable до обработки всех элементов или возникновения исключения.
Iterator<T> iterator()
Возвращает итератор по элементам типа T.
default Spliterator<T> spliterator()
Создает Spliterator по элементам, описываемым этим Iterable.

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

iterator

Iterator<T> iterator()
Возвращает итератор по элементам типа T.
Возвращает:
итератор.

forEach

default void forEach(Consumer<? super T> action)
Выполняет заданное действие для каждого элемента Iterable до обработки всех элементов или возникновения исключения. Действия выполняются в порядке итерации, если этот порядок задан. Исключения, сгенерированные действием, передаются вызывающей стороне.

Поведение этого метода не определено, если действие выполняет побочные эффекты, изменяющие исходный источник элементов, если только в переопределяемом классе не указана политика одновременного изменения.

Требования к реализации:

Реализация по умолчанию ведет себя так, как если бы:

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

spliterator

default Spliterator<T> spliterator()
Создает Spliterator по элементам, описываемым этим Iterable.
Требования к реализации:
Реализация по умолчанию создает связанный итератор из Iterator итерабельного объекта. Итератор наследует свойства fail-fast итератора итерабельного объекта.
Примечание реализации:
Реализация по умолчанию обычно должна быть переопределена. Итератор, возвращаемый реализацией по умолчанию, имеет плохие возможности разделения, не является размеченным и не сообщает о каких-либо характеристиках итератора. Реализующие классы почти всегда могут предоставить лучшую реализацию.
Возвращает:
Spliterator по элементам, описываемым этим Iterable.
С:
1.8

© 1993, 2023, 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/21/docs/api/java.base/java/lang/Iterable.html

Spec-Zone.ru

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