定义
WeekDay.MON.name() == WeekDay.MON
public enum WeekDay {
//todo 每个成员变量默认有value,且从0开始 SUN(0), MON(1), TUS(2), WED(3), THU(4), FRI(5), SAT(6);
SUN, MON, TUS, WED, THU, FRI, SAT;
public static void main(String[] args) {
//todo 和静态变量使用方式差不多,而且默认的toString方法返回的就是对应的名字
WeekDay sat = WeekDay.SAT;
System.out.println(sat); //SAT
System.out.println(WeekDay.valueOf("mon".toUpperCase())); //MON
System.out.println(w + ".ordinal() ====> " + WeekDay.MON.ordinal()); //0
System.out.println("Weekday.MON.name() ====> " + WeekDay.MON.name()); //MON
System.out.println("Weekday.MON ====> " + WeekDay.MON); //MON
}
}
常规用法
public enum EnumDemo1 {
SUCCESS(0, "SUCCESS"),
ERROR(1, "ERROR"),
NEED_LOGIN(10, ""),
ILLEGAL_ARGUMENT(2, "ILLEGAL_ARGUMENT");
private final int code;
private final String desc;
EnumDemo1(int code, String desc){
this.code = code;
this.desc = desc;
}
public int getCode(){
return code;
}
public String getDesc(){
return desc;
}
public static void main(String[] args) {
System.out.println(EnumDemo1.SUCCESS.getCode()); //0
System.out.println(EnumDemo1.SUCCESS.getDesc()); //SUCCESS
}
}