作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
enum
数据类型和Enumeration
接口(interface)之间有什么区别吗?我在两者之间感到困惑。
我得到的答案是它们不相关,但这让我想到了另一个问题。
我们不能实例化接口(interface)。那么这条线有什么意义呢
Enumeration days = dayNames.elements();
这是包含该行的完整代码
import java.util.Vector;
import java.util.Enumeration;
public class EnumerationTester {
public static void main(String args[]) {
Enumeration days;
Vector 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());
}
}
}
最佳答案
Enumeration is an interface :实现 Enumeration
的对象界面生成一系列元素,一次一个。连续调用 nextElement
方法返回系列的连续元素。
例如,打印 Vector<E> v
的所有元素:
for (Enumeration<E> e = v.elements(); e.hasMoreElements();)
System.out.println(e.nextElement());
enum is a data type :枚举类型是一种特殊的数据类型,它使变量成为一组预定义的常量。该变量必须等于为其预定义的值之一。
例如,您可以指定星期几 enum
输入为:
public enum Day {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY,
THURSDAY, FRIDAY, SATURDAY
}
public static void main(String[] args)
{
System.out.ptintln(Day.SUNDAY); // print SUNDAY
}
你的第二个问题:
We cannot instantiate interface . So what is the significance of this line
Enumeration days = dayNames.elements();
dayNames
是 Vector
, 就像一个集合 List
. (存在差异,但这超出了问题的范围。)。然而,当daynames.elements()
被调用,它返回 vector daynames
的分量的枚举.返回的 Enumeration 对象将生成添加到此 vector 的所有项目。生成的第一个项目是 index 0
处的项目,然后是 index 1
处的项目, 等等。
关于java - 枚举与枚举的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19445183/
我是一名优秀的程序员,十分优秀!