以前一直使用常量,最近新公司项目中大量使用了枚举,写了个小demo简单记录下,感觉功能比常量多,比较好用:
public enum Week {
//参数对应构造方法与属性
MONDAY("星期一",1),
TUESDAY("星期二",2),
WEDNESDAY("星期三",3),
THURSDAY("星期四",4),
FRIDAY("星期五",5),
SATURDAY("星期六",6),
SUNDAY("星期日",7);
//属性
private String desc;
private int code;
/**
* 构造方法
*/
Week(String desc, int code){
this.desc=desc;
this.code=code;
}
/**
* 定义方法,返回描述,跟常规类的定义没区别
* @return
*/
public String getDesc(){
return desc;
}
public int getCode(){
return code;
}
/**
* 根据code 获得 desc
* @param code
* @return
*/
public static String DescByCode(int code){
for (Week week:Week.values()) {
if((week.getCode())==code){
return week.getDesc();
}
}
return null;
}
}
使用:
public static void main( String[] args ) {
System.out.println(Week.MONDAY.getDesc());
System.out.println(Week.MONDAY.getCode());
}