Java 枚举
枚举
enum
枚举是一个特殊的"类",它表示一组常量(不可更改的变量,如final
变量)。
要创建enum
,请使用enum
关键字(而不是类或接口),并用逗号分隔常量。请注意,它们应为大写字母:
Enum 是"enumerations"的缩写,意思是"特别列出"。
类内的枚举
您还可以在类中具有 enum
枚举:
实例
public class MyClass {
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 MyClass {
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;
}
}
}
输出将是:
Medium level
循环遍历枚举
枚举类型有一个 values()
方法,该方法返回所有枚举常量的数组。如果要循环遍历枚举的常量,此方法非常有用:
枚举和类之间的差异
enum
枚举可以像class
类一样具有属性和方法。唯一的区别是枚举常量是public
, static
和 final
(不可更改-无法重写)。
enum
枚举不能用于创建对象,也不能扩展其他类(但可以实现接口)。
为什么以及何时使用枚举?
当您知道值不会更改时,如月日期、星期、颜色等,请使用枚举。