检查传入参数是否存在枚举类中

import lombok.Getter;


@Getter
public enum OrderStatusEnum {

    ORDER_STATUS_SUBMIT("SUBMIT","待付款"),
    ORDER_STATUS_PAID("PAID","已付款"),
    ORDER_STATUS_CANCEK("CANCEK","已取消"),
    ORDER_STATUS_INVALID("INVALID","无效订单");

    private String code;
    private String describe;

    OrderStatusEnum(String code, String describe) {
        this.code = code;
        this.describe = describe;
    }

    public static  OrderStatusEnum get(String code){
        OrderStatusEnum [] orderStatusEnums = OrderStatusEnum.values();
        for (int i = 0; i < orderStatusEnums.length; i++) {
            if(orderStatusEnums[i].getCode() == code){
                return orderStatusEnums[i];
            }
        }
        return null;
    }


    public static Boolean contains(String code){
        for(OrderStatusEnum statusEnum : OrderStatusEnum.values()){
            if(statusEnum.getCode().equals(code) ){
                return true;
            }
        }
        return false;
    }

    public static void main(String[] args) {
        System.out.println(OrderStatusEnum.contains("SUBMIT"));
        System.out.println(OrderStatusEnum.contains("aaa"));
    }


}

  输出打印结果 

true
false

Process finished with exit code 0
发布了45 篇原创文章 · 获赞 51 · 访问量 17万+

猜你喜欢

转载自blog.csdn.net/qq_40162735/article/details/102571556