曾经以为的枚举类用法如下。
public class StaffConstant {
/**
* 性别男
*/
public static final String SEX_MAN= "男";
/**
* 性别女
*/
public static final String SEX_MAN= "女";
实际上枚举类可以这么用
public enum StaffStatusEnum {
MOVE_TYPE_NEW(2, "入职", "Onboarding"),
MOVE_TYPE_BECOME(0, "转正", "End Probation"),
MOVE_TYPE_QUIT(3, "离职", "Termination"),
private final Integer typeId;
private final String name;
private final String engName;
StaffStatusEnum (Integer typeId, String name, String engName) {
this.typeId = typeId;
this.name = name;
this.engName = engName;
}
public Integer getTypeId() {
return typeId;
}
public String getName() {
if (LangTypeEnum.CHN.getI18nCode().equals(I18nLocaleContextHolder.getI18nLocale())) {
return name;
}
return engName;
}
public static StaffChangeMoveTypeEnum getByTypeId(Integer typeId) {
for (StaffChangeMoveTypeEnum staffChangeMoveTypeEnum : StaffChangeMoveTypeEnum.values()) {
if (staffChangeMoveTypeEnum.typeId.equals(typeId)) {
return staffChangeMoveTypeEnum;
}
}
return "";
}
}