枚举类可以写一个getEnum方法,对传入参数做校验,检查是否为本枚举类的参数。
@Getter
@AllArgsConstructor
public enum WeekEnum {
/**
* 周一
*/
MON(0,"周一");
private final int num;
private final String week;
public static WeekEnum getEnum(Integer code){
return Arrays.stream(WeekEnum.values())
.filter(e->(e.getNum()==code)).findFirst()
.orElseThrow(()->new ExpressionException("该类型无法解析"+code));
}
}