Java 枚举
枚举
enum
是一种特殊的“类”,表示一组常量(不可更改的变量,类似于 final
变量)。
要创建一个 enum
,请使用 enum
关键字(而不是 class 或 interface),并用逗号分隔常量。请注意,它们应该是大写字母。
Enum 是“enumerations”的缩写,意思是“具体列举”。
类中的枚举
您也可以在一个类内部定义一个 enum
。
示例
public class Main {
enum Level {
LOW,
MEDIUM,
HIGH
}
public static void main(String[] args) {
Level myVar = Level.MEDIUM;
System.out.println(myVar);
}
}
输出将是:
MEDIUM
Switch 语句中的枚举
枚举常用于 switch
语句中,以检查相应的值。
示例
enum Level {
LOW,
MEDIUM,
HIGH
}
public class Main {
public static void main(String[] args) {
Level myVar = Level.MEDIUM;
switch(myVar) {
case LOW:
System.out.println("Low level");
break;
case MEDIUM:
System.out.println("Medium level");
break;
case HIGH:
System.out.println("High level");
break;
}
}
}
输出将是:
中等级别
遍历枚举
枚举类型有一个 values()
方法,它返回一个包含所有枚举常量的数组。当您想遍历枚举的常量时,此方法很有用。
枚举和类的区别
一个 enum
可以像 class
一样拥有属性和方法。唯一的区别是枚举常量是 public
、static
和 final
的(不可更改 - 不能被覆盖)。
一个 enum
不能用于创建对象,也不能继承其他类(但它可以实现接口)。
为什么以及何时使用枚举?
当您拥有一组您知道不会改变的值时,请使用枚举,例如月份、星期几、颜色、一副牌等等。