/**
* 一组相同类型的常量的集合
* @author cc
*
*/
public class EnumDemo {
public static void main(String[] args) {
//遍历
for(WorkDay workDay:WorkDay.values()){
System.out.println("序号:"+workDay.ordinal());//ordinal,返回枚举常量的序号,从0开始
System.out.println(workDay);//打印时调用toString()方法
System.out.println("类型:"+workDay.getDeclaringClass());//返回和当前枚举常量的枚举类型对应的 class对象
System.out.println("name:"+workDay.name());//name方法
}
//switch来匹配枚举类型的常量
WorkDay monday = WorkDay.MON;
switch (monday) {
case MON:
System.out.println("周一");
break;
case TUE:
System.out.println("周二");
break;
case WEN:
System.out.println("周三");
break;
case THU:
System.out.println("周四");
break;
case FRI:
System.out.println("周五");
break;
case SAT:
System.out.println("周六");
break;
case SUN:
System.out.println("周天");
break;
default:
System.out.println("不知道是周几");
break;
}
//枚举类型中定义属性,重写构造方法,注意一定是private
for(WorkDay1 workDay:WorkDay1.values()){
System.out.println(workDay.getName()+":"+workDay.getValue());
}
}
enum WorkDay{
MON,TUE,WEN,THU,FRI,SAT,SUN;
}
enum WorkDay1{
MON("周一",0),
TUE("周二",1),
WEN("周三",2),
THU("周四",3),
FRI("周五",4),
SAT("周六",5),
SUN("周天",6);
private String name;
private int value;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
private WorkDay1(String name, int value) {
this.name = name;
this.value = value;
}
}
}
参考https://www.cnblogs.com/jingmoxukong/p/6098351.html#%E6%A6%82%E5%BF%B5