Java枚举使用场景举例

编程教程 > Java (1355) 2024-11-26 14:39:04
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又可以将状态值的数据返回给前端作为筛选条件使用。
 

评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
Java枚举使用场景举例
Spring Boot Enums枚举参数传递
前言spring boot 项目常用的几个类设计,方便快速搭建项目错误处理模块。代码片段 错误枚举定义@Getterpublic enum ErrorCodeE
首先说明一下,配置失效总体原因有两种情况一 情况一 版本问题 版本问题,以前 insert-strategy/ update-strategy是使用0/1/2来标记的,3.1.x以后使用了枚举变...
Java 编程语言中,状态机主要有这几个 spring statemachine 、squirrel-foundation 、下面是cola-component-statemachine 实战。
​Java序列化的作用Java序列化允许将Java对象写入文件系统以进行永久存储,也可以将其写入网络以传输到其他应用程序
Java多线程生命周期
问题描述idea启动maven的JavaFX项目报错:Exception in Application start method java.lang.reflect.InvocationTarg...
为了方便管理,项目中使用统一风格的返回格式$title(Result.java) import java.io.Serializable; import java.math.BigDecima...
Java编程之Spring Cloud Hystrix Circuit熔断/断路
Java编程之spring boot FastDFS Java client使用,Java编程,FastDFS Java客户端
Vert.x java 入门,Vert.x这个框架在常规的web业务开发中估计还不是很成熟。但是了解了他的一些原理我觉得可以有一番作为。今天主要简单讲解下eclipse Vert.x是什么有什么...
Thymeleaf 递归,Thymeleaf模板引擎递归展示如评论留言等场合适用
问题描述JavaFX maven项目在idea中启动报错:Exception in thread "WindowsNativeRunloopThread" java.lang.NoSuchMet...
问题描述最近写JavaFX程序遇到了下面的错误:Exception in thread "pool-2-thread-1" java.lang.IllegalStateException: No...