Интерфейс перечисления<E>
- Параметры типа:
E- тип элементов, возвращаемых этим перечислением
- Все известные подинтерфейсы:
NamingEnumeration<T>
- Все известные реализующие классы:
StringTokenizer
public interface Enumeration<E>
Объект, реализующий интерфейс Enumeration, генерирует серию элементов по одному. Последовательные вызовы метода
nextElement возвращают последовательные элементы этой серии. Например, чтобы вывести все элементы вектора v:
for (Enumeration<E> e = v.elements(); e.hasMoreElements();)
System.out.println(e.nextElement()); Методы предоставляются для перечисления элементов вектора, ключей хэш-таблицы и значений в хэш-таблице. Перечисления также используются для указания входных потоков для SequenceInputStream.
- Примечание API:
- Функциональность этого интерфейса дублируется интерфейсом
Iterator. Кроме того,Iteratorдобавляет необязательную операцию удаления и имеет более короткие имена методов. Новые реализации должны рассмотреть использованиеIteratorвместоEnumeration. Возможно адаптироватьEnumerationкIterator, используя методasIterator(). - С:
- 1.0
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default Iterator |
asIterator() |
Возвращает Iterator, проходящий по оставшимся элементам, перечисляемым этим перечислением. |
boolean |
hasMoreElements() |
Проверяет, содержит ли это перечисление больше элементов. |
E |
nextElement() |
Возвращает следующий элемент этого перечисления, если у объекта перечисления есть еще хотя бы один элемент для предоставления. |
Подробное описание методов
hasMoreElements
boolean hasMoreElements()
Проверяет, содержит ли это перечисление больше элементов.
- Возвращает:
-
true, если и только если объект перечисления содержит по крайней мере еще один элемент для предоставления;falseв противном случае.
nextElement
E nextElement()
Возвращает следующий элемент этого перечисления, если у объекта перечисления есть еще хотя бы один элемент для предоставления.
- Возвращает:
- следующий элемент этого перечисления.
- Исключения:
-
NoSuchElementException- если больше элементов нет.
asIterator
default Iterator<E> asIterator()
Возвращает
Iterator, проходящий по оставшимся элементам, перечисляемым этим перечислением. Обход не определен, если после вызова asIterator вызываются какие-либо методы этого перечисления.- Примечание API:
- Этот метод предназначен для адаптации кода, генерирующего
Enumerationэкземпляры к коду, использующемуIteratorэкземпляры. Например, методJarFile.entries()возвращаетEnumeration<JarEntry>. Его можно преобразовать вIterator, а затем использовать методforEachRemaining():
(Обратите внимание, что также есть методJarFile jarFile = ... ; jarFile.entries().asIterator().forEachRemaining(entry -> { ... });JarFile.stream(), который возвращаетStreamэлементов, что может быть удобнее в некоторых случаях.) - Требования к реализации:
- Предполагаемая реализация возвращает
Iterator, чей методhasNextвызывает методhasMoreElementsэтого перечисления, чей методnextвызывает методnextElementэтого перечисления, а методremoveвызываетUnsupportedOperationException. - Возвращает:
- итератор, представляющий оставшиеся элементы этого перечисления
- С:
- 9
© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/Enumeration.html