/**
* 排班工作状态
*/
public enum WorkStatusEnum{
//1加班、2离岗、3休假、4项目借调
OVERTIME_SCHEDULE("00","加班"),
ABSENCES_SCHEDULE("11","离岗"),
VACATION_SCHEDULE("12","休假"),
SECONDMENT_SCHEDULE("13","项目借调");
WorkStatusEnum(String code,String message){
this.code=code;
this.message=message;
}
private String code;
private String message;
public String getMessage() {
return message;
}
public String getCode() {
return code;
}
//通过传入的 code 来获取 对应的 枚举类
public static WorkStatusEnum codeOf(String code){
for (WorkStatusEnum workStatusEnum:values()){
if (workStatusEnum.getCode().equals(code)){
return workStatusEnum;
}
}
throw new RuntimeException("编码错误");
}
}
workStatusEnum.getCode().equals(code)
之前写的 getCode==code 不行
为什么?
因为== 是比较的 内存地址
如果是 别的对象的值的话 他们的地址不一样 所有 如果是 == 的 就会报错