Интерфейс перечисление<E>
- Параметры типа:
-
E- тип элементов, возвращаемых этим перечислением
- Все известные подинтерфейсы:
NamingEnumeration<T>
- Все известные реализующие классы:
StringTokenizer
public interface Enumeration<E>
Объект, реализующий интерфейс перечисления, генерирует серию элементов по одному за раз. Последовательные вызовы метода
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, 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/util/Enumeration.html