1. 枚举类
public enum DayEnum {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY,
;
}
public enum DayEnum {
MONDAY("周一"),
TUESDAY("周二"),
WEDNESDAY("周三"),
THURSDAY("周四"),
FRIDAY("周五"),
SATURDAY("周六"),
SUNDAY("周日"),
;
private String desc;
DayEnum(String desc) {
this.desc = desc;
}
}
public enum DayEnum {
MONDAY("Mon", "Monday", "周一"),
TUESDAY("Tue", "Tuesday", "周二"),
WEDNESDAY("Wed", "Wednesday", "周三"),
THURSDAY("Thur", "Thursday", "周四"),
FRIDAY("Fri", "Friday", "周五"),
SATURDAY("Sat", "Saturday", "周六"),
SUNDAY("Sun", "Sunday", "周日"),
;
private String abbr;
private String code;
private String desc;
DayEnum(String abbr, String code, String desc) {
this.abbr = abbr;
this.code = code;
this.desc = desc;
}
public static DayEnum getByCode(String code) {
if (code == null || code.isEmpty()) {
return null;
}
for (DayEnum value : values()) {
if (value.getCode().equals(code)) {
return value;
}
}
return null;
}
public String getAbbr() {
return abbr;
}
public String getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
2. 获取枚举常量名称
枚举值与枚举名称不一致时,做转换
比如:LOGISTICS_CENTER — loc_center
@Test
public void transferType() {
String name = MessageTypeEnum.getNameByCode("loc_center");
System.out.println(name);
}
public enum MessageTypeEnum {
TRADE_CENTER("trade_center", "物流中心"),
LOGISTICS_CENTER("loc_center", "协同中心"),
;
private String code;
private String desc;
MessageTypeEnum(String code, String desc) {
this.code = code;
this.desc = desc;
}
public static MessageTypeEnum getByCode(String code) {
if (code == null) {
return null;
}
for (MessageTypeEnum value : values()) {
if (value.getCode().equals(code)) {
return value;
}
}
return null;
}
/**
* 返回枚举名称
*/
public static String getNameByCode(String code) {
if (code == null || code.isEmpty()) {
return code;
}
for (MessageTypeEnum value : values()) {
if (value.getCode().equals(code)) {
return value.name();
}
}
return code;
}
public String getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
【信息由网络或者个人提供,如有涉及版权请联系COOY资源网邮箱处理】
© 版权声明
部分内容为互联网分享,若有侵权请联系站长删除。
THE END
暂无评论内容