java - 有人能解释一下这个关于枚举的程序在java中是如何工作的吗?

标签 java function enums scjp ocpjp

代码如下:

enum Status {

    STATUS_OPEN(10),
    STATUS_STARTED(11),
    STATUS_INPROGRESS(12);

    private final int status;

    Status(int aStatus) {
        this.status = aStatus;
    }

    public int getStatus() {
        return this.status;
    }

}

class StatusTest3 {

    public static void main(String[] args) {

        for (Status stat : Status.values()) {
            System.out.println(stat + " value is " + stat.getStatus());
        }
    }
}

Status.values() 返回什么?

输出是:

STATUS_OPEN value is 10
STATUS_STARTED value is 11
STATUS_INPROGRESS value is 12

最佳答案

http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html

All the constants of an enum type can be obtained by calling the implicit public static T[] values() method of that type.

关于java - 有人能解释一下这个关于枚举的程序在java中是如何工作的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19218076/

相关文章:

postgresql - 使用 DO DECLARE 和 EXECUTE 的 Postgres DROP TABLE

java - 在泛型表达式中使用枚举来定义返回类型

java - 等待线程在 Java 中完成

java - CardLayout gui错误eclipse

javascript - 基本的 Javascript 作用域

javascript - javascript中将实例移动到另一个类的方法

java - 如何根据值查找枚举?

java - 枚举是否允许在 Java 中有 setter?

java - Eclipse Java 调试器在一个文件中始终偏离应有的位置 6 行

java - 为什么我的列表没有填充到 Android Studio 中?