枚举接口定义了枚举(一次获取一个)对象集合中的元素的方法。
这一遗留接口已被 Iterator 取代。尽管并未弃用,但枚举对于新代码来说已被视为已过时。但是,它被旧类(例如 Vector 和 Properties)定义的多种方法使用,被其他几个 API 类使用,并且目前在应用程序代码中广泛使用。
Enumeration 声明的方法是总结如下表
序号 | 方法及说明 |
---|---|
1 | boolean hasMoreElements( ) 实现时,当还有更多元素需要提取时,它必须返回 true;当所有元素都已枚举完时,它必须返回 false。 |
2 | Object nextElement( ) 这将枚举中的下一个对象作为通用对象引用返回。 |
示例 1
以下示例显示向量枚举的用法。
import java.util.Vector;
import java.util.Enumeration;
public class EnumerationTester {
public static void main(String args[]) {
Enumeration<String> days;
Vector<String> dayNames = new Vector<>();
dayNames.add("Sunday");
dayNames.add("Monday");
dayNames.add("Tuesday");
dayNames.add("Wednesday");
dayNames.add("Thursday");
dayNames.add("Friday");
dayNames.add("Saturday");
days = dayNames.elements();
while (days.hasMoreElements()) {
System.out.println(days.nextElement());
}
}
}
输出
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
示例 2
以下示例显示如何使用属性的枚举来打印值。
import java.util.Vector;
import java.util.Enumeration;
import java.util.Properties;
public class EnumerationTester {
public static void main(String args[]) {
Enumeration<Object> days;
Properties dayNames = new Properties();
dayNames.put(1, "Sunday");
dayNames.put(2,"Monday");
dayNames.put(3,"Tuesday");
dayNames.put(4,"Wednesday");
dayNames.put(5,"Thursday");
dayNames.put(6,"Friday");
dayNames.put(7,"Saturday");
days = dayNames.elements();
while (days.hasMoreElements()) {
System.out.println(days.nextElement());
}
}
}
输出
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday