Java 枚举(enum) 是一个特殊的类,一般表示一组常量、enum 定义的枚举类默认继承了 java.lang.Enum 类
1. 基本应用
Java 枚举类使用 enum 关键字来定义,各个常量使用逗号 ,
来分割
public enum Weekday {
// 枚举 Weekday 是一个特殊的类
// 每个枚举常量(如:SUN)都是一个Weekday的实例对象,并且都默认具备 public static final 修饰符
SUN, MON, TUE, WED, THU, FRI, SAT
}
枚举常用方法:
values()
以数组形式返回枚举类型的所有成员ordinal()
方法可以找到每个枚举常量的索引,就像数组索引一样valueOf()
方法返回指定字符串值的枚举常量、不存在的会报错IllegalArgumentException
public class WeekdayEnumTest {
public static void main(String[] args) {
// 迭代枚举
for (Weekday weekday : Weekday.values()) {
System.out.println(weekday.ordinal() + ": " + weekday.name());
}
// 当使用枚举类型成员时,直接使用枚举名称调用成员即可
Weekday sunday = Weekday.SUN;
System.out.println(sunday);
Weekday mon = Weekday.valueOf("MON");
System.out.println(mon);
}
}
运行截图:
2. Enum类
enum 关键字定义的枚举类都默认继承了Enum 类(抽象类)、该类位于 java.lang下、该类具有两个 final 常量:
- name :枚举常量,如上例中的
SUN MON<