1、写一个基础的枚举接口
public interface BaseEnums {
Integer getCode();
String getLabel();
}
2、使枚举继承这个接口
public enum LogModule implements BaseEnums{
UNKNOW(0, "未知"),
USERMANAGE(1, "用户管理"),
ACCOUNTMANAGE(2, "账户管理"),
COURIERCOMPANY(3, "快递公司"),
GOODSMANAGE(4, "商品管理"),
ROLEMANAGE(5, "角色管理"),
MENUMANAGE(6, "菜单管理"),
DISTRIBUTIONCENTER(7, "分拨中心"),
SERVICESITE(8, "服务站点"),
;
LogModule(int code, String label) {
this.code = code;
this.label = label;
}
private Integer code;
private String label;
public Integer getCode() {
return code;
}
public String getLabel() {
return label;
}
}
3、编写通用的方法根据code获取label
public static <T extends BaseEnums> String getLabelByValue(Class<T> enumClass, Integer code) {
for (T each : enumClass.getEnumConstants()) {
if (each.getCode().equals(code)) {
return each.getLabel();
}
}
return "";
}