-
- All Known Subinterfaces:
-
NamingEnumeration<T>
- 所有已知实现类:
-
StringTokenizer
public interface Enumeration<E>实现枚举接口的对象生成一系列元素,一次一个。 连续调用nextElement方法返回系列的连续元素。例如,要打印所有元素的一个
Vector<E>v :for (Enumeration<E> e = v.elements(); e.hasMoreElements();) System.out.println(e.nextElement());提供了通过向量的元素,散列表的键和哈希表中的值来枚举方法。 枚举也用于将输入流指定为
SequenceInputStream。- API Note:
-
该接口的功能由
Iterator接口复制。 此外,Iterator添加了可选的删除操作,并且具有较短的方法名称。 新的实现应该考虑使用Iterator,而不是Enumeration。 因此能够适应一个Enumeration到Iterator通过使用asIterator()方法。 - 从以下版本开始:
- 1.0
- 另请参见:
-
Iterator,SequenceInputStream,nextElement(),Hashtable,Hashtable.elements(),Hashtable.keys(),Vector,Vector.elements()
-
-
方法摘要
所有方法 接口方法 抽象方法 Default Methods Modifier and Type 方法 描述 default Iterator<E>asIterator()返回一个Iterator,它遍历此枚举覆盖的其余元素。booleanhasMoreElements()测试此枚举是否包含更多元素。EnextElement()如果此枚举对象至少有一个要提供的元素,则返回此枚举的下一个元素。
-
-
-
方法详细信息
-
hasMoreElements
boolean hasMoreElements()
测试此枚举是否包含更多元素。- 结果
-
true当且仅当此枚举对象包含至少一个要提供的元素时; 否则为false。
-
nextElement
E nextElement()
如果此枚举对象至少有一个要提供的元素,则返回此枚举的下一个元素。- 结果
- 这个枚举的下一个元素。
- 异常
-
NoSuchElementException- 如果不存在更多元素。
-
asIterator
default Iterator<E> asIterator()
返回一个Iterator,它遍历此枚举覆盖的其余元素。 如果在调用asIterator之后对此枚举调用了任何方法,则遍历是未定义的。- API Note:
-
此方法旨在帮助适应代码生成
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
-
-