Java枚举使用场景举例

位置:首页>博客>详情   分类:Java教程   阅读(176)   2023-03-28 11:29:14
Java enum(枚举)使用
 
package common.enums;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public enum OrderStatus {

	待付款(100, "待付款"),
	待发货(200, "待发货"),
	待收货(300, "待收货"),
	待确认收货(400, "待确认收货"),
	待评价(500, "待评价"),
	订单完成(600, "订单完成");

    int value;
    String name;

    OrderStatusEnum(int value, String name) {
        this.value = value;
        this.name = name;
    }

    public int getValue() {
        return value;
    }

    public String getName() {
        return name;
    }

    private static final List<Map<String, Object>> CODE_MAP = new ArrayList<>();

    static {
        for (OrderStatusEnum typeEnum : OrderStatusEnum.values()) {
            Map<String, Object> map = new HashMap<>();
            map.put("value", typeEnum.value);
            map.put("name", typeEnum.name);
            CODE_MAP.add(map);
        }
    }

    public static List<Map<String, Object>> toData() {
        return CODE_MAP;
    }

    public static OrderStatusEnum setValue(int value) {
        for (OrderStatusEnum typeEnum : OrderStatusEnum.values()) {
            if (typeEnum.value == value)
                return typeEnum;
        }
        return null;
    }
}


枚举一般用来定义某些固定的状态以及值,比如上面的订单状态。然后通过toData又可以将状态值的数据返回给前端作为筛选条件使用。
 
标签: 枚举 enum java
地址:https://www.leftso.com/article/549.html