【java】枚举

枚举类:

public enum StatusEnum {

    HAHA(1, "哈哈"),
    XIXI(2, "嘻嘻"),
    GAGA(3, "嘎嘎");

    private final Integer code;

    private final String value;

    public Integer getCode() {
        return code;
    }

    public String getValue() {
        return value;
    }

    StatusEnum(Integer code, String value) {
        this.code = code;
        this.value = value;
    }

    public static Integer getCode(String value) {
        for (StatusEnum e : StatusEnum.values()) {
            if (e.getValue().equals(value)) {
                return e.getCode();
            }
        }
        return null;
    }

    public static String getValue(Integer code) {
        for (StatusEnum e : StatusEnum.values()) {
            if (e.getCode().equals(code)) {
                return e.getValue();
            }
        }
        return null;
    }

    /**
     * 获取枚举列表
     * @return
     */
    public static List<Select> getSelect() {
        List<Select> selects = new ArrayList<>();
        StatusEnum[] ese = StatusEnum.values();
        for (StatusEnum e : ese) {
            Select sel = new Select(e.getCode(), e.getValue());
            selects.add(sel);
        }
        return selects;
    }
}

枚举test:

public static void main(String[] args) {
    StatusEnum statusEnum = StatusEnum.HAHA;
    System.out.println(statusEnum.getCode()+"==="+ statusEnum.getValue()); // 1===哈哈

    List<Select> selects = StatusEnum.getSelect();
    for (int i = 0; i < selects.size(); i++) {
        Select select = selects.get(i);
        System.out.println(select.getCode() + "===" + select.getDesc());
        // 1===哈哈
        // 2===嘻嘻
        // 3===嘎嘎
    }
}

猜你喜欢

转载自blog.csdn.net/shiki_41/article/details/80859035