java枚举的使用

简介: java枚举的使用
 
public class PayNineFee extends BaseEntity {
 
    /**
   * serialVersionUID:序列化
   *
   * @since Ver 1.1
   */
  private static final long serialVersionUID = 1L;
  
  private String id;
    private String type;
    private String nameCh;
    private String nameEn;
    private String nameOriginal;
    private String currencyCode;
    private BigDecimal fee;
    private String instruction;
    private Date createTime;
    private String createUserId;
    private Date lastUpdateTime;
    private String lastUpdateUserId;
 
    private List<String> ids;//不在数据库,id的集合,可以用于删除多个实体
 
    /**
     * type对应的枚举,服务费的9张表
     * <p>如果修改数据字典同步修改</p>
     * @author Mr Liu
     */
    public enum TypeEnum {
      TYPE_P("1","中国发明"),
      TYPE_U("2","中国实用新型"),
      TYPE_D("3","中国外观设计"),
      TYPE_PCT("4","PCT国际阶段"),
      TYPE_OUT_PATENT("5","海外专利申请"),
      TYPE_OUT_IN_CN("6","海外进中国报价单"),
      TYPE_TW_IN_CN("7","台湾进中国报价单"),
      TYPE_TM("8","商标报价单"),
      TYPE_CPO("9","版权及其他报价单");
 
        private String code;
        private String name;
 
        private TypeEnum(String code, String name){
            this.code = code;
            this.name = name;
        }
 
        public String getCode() {
            return code;
        }
 
        public void setCode(String code) {
            this.code = code;
        }
 
    public String getName() {
            return name;
        }
 
        public void setName(String name) {
            this.name = name;
        }
 
        public static String getName(String code){
            String name = "";
            for(TypeEnum s : TypeEnum.values()){
                if(s.getCode().equals(code)){
                    name = s.getName();
                    break;
                }
            }
            return name;
        }
 
        @Override
        public String toString() {
            return String.valueOf(this.getCode());
        }
 
        /**
         * 获取全部 json
         * @return
         */
        public static String getJson(){
          TypeEnum[] array = TypeEnum.values();
            StringBuilder sb = new StringBuilder("[");
            for(TypeEnum u : array){
                sb.append("{'"+u.getCode()+"':'"+u.getName()+"'},");
            }
            sb.deleteCharAt(sb.lastIndexOf(","));
            sb.append("]");
            return sb.toString();
        }
 
        /**
         * 获取全部 map显示
         * @return
         */
        public static Map<String,String> getMap(){
          TypeEnum[] array = TypeEnum.values();
            Map<String,String> map = new HashMap<String, String>();
            for(TypeEnum u : array){
                map.put(u.getCode(), u.getName());
            }
            return map;
        }
    }
    
    public String getId() {
        return id;
    }
 
    public String getType() {
        return type;
    }
 
    public String getNameCh() {
        return nameCh;
    }
 
    public String getNameEn() {
        return nameEn;
    }
 
    public String getNameOriginal() {
        return nameOriginal;
    }
 
    public String getCurrencyCode() {
        return currencyCode;
    }
 
    public BigDecimal getFee() {
        return fee;
    }
 
    public String getInstruction() {
        return instruction;
    }
 
    public Date getCreateTime() {
        return createTime;
    }
 
    public String getCreateUserId() {
        return createUserId;
    }
 
    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }
 
    public String getLastUpdateUserId() {
        return lastUpdateUserId;
    }
 
 
 
    public List<String> getIds() {
    return ids;
  }
 
  public void setIds(List<String> ids) {
    this.ids = ids;
  }
 
  public void setId(String id) {
        this.id = id;
    }
 
    public void setType(String type) {
        this.type = type;
    }
 
    public void setNameCh(String nameCh) {
        this.nameCh = nameCh;
    }
 
    public void setNameEn(String nameEn) {
        this.nameEn = nameEn;
    }
 
    public void setNameOriginal(String nameOriginal) {
        this.nameOriginal = nameOriginal;
    }
 
    public void setCurrencyCode(String currencyCode) {
        this.currencyCode = currencyCode;
    }
 
    public void setFee(BigDecimal fee) {
        this.fee = fee;
    }
 
    public void setInstruction(String instruction) {
        this.instruction = instruction;
    }
 
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
 
    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }
 
    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }
 
    public void setLastUpdateUserId(String lastUpdateUserId) {
        this.lastUpdateUserId = lastUpdateUserId;
    }
 
    public String toString(){
        String json = JSON.toJSONString(this);
        return json.replaceAll("\"", "'");
    }
 
}


相关文章
|
前端开发 JavaScript Java
【前端学java】Java中的接口和枚举概念(8)
【8月更文挑战第9天】Java中的接口和枚举概念(8)
249 4
|
安全 Java 程序员
Java语言枚举(Enum)的深入探索
Java语言枚举(Enum)的深入探索
312 0
|
安全 Java 测试技术
🎉Java零基础:全面解析枚举的强大功能
【10月更文挑战第19天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
681 60
|
Java
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
270 24
|
安全 Java 索引
Java——反射&枚举
本文介绍了Java反射机制及其应用,包括获取Class对象、构造方法、成员变量和成员方法。反射允许在运行时动态操作类和对象,例如创建对象、调用方法和访问字段。文章详细解释了不同方法的使用方式及其注意事项,并展示了如何通过反射获取类的各种信息。此外,还介绍了枚举类型的特点和使用方法,包括枚举的构造方法及其在反射中的特殊处理。
366 10
Java——反射&枚举
|
Java
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
354 5
|
安全 Java 开发者
Java 枚举(enum)详解
Java 中的枚举(`enum`)是一种特殊的数据类型,用于定义一组固定的常量,提升代码的类型安全性和可读性。枚举使用 `enum` 关键字定义,支持方法和构造函数,具有类型安全、单例、自动序列化等特点,并且可以遍历和用于 `switch` 语句中。实际应用包括状态机、指令集、类型标识等场景。枚举使代码更加清晰易维护。
1369 2
Java枚举使用的基本案例
这篇文章是关于Java枚举的基本使用,通过一个指令下发的代码案例,展示了如何定义枚举、使用枚举以及如何通过枚举实现指令的匹配和处理。
|
Java 开发者
在Java编程中,if-else与switch作为核心的条件控制语句,各有千秋。if-else基于条件分支,适用于复杂逻辑;而switch则擅长处理枚举或固定选项列表,提供简洁高效的解决方案
在Java编程中,if-else与switch作为核心的条件控制语句,各有千秋。if-else基于条件分支,适用于复杂逻辑;而switch则擅长处理枚举或固定选项列表,提供简洁高效的解决方案。本文通过技术综述及示例代码,剖析两者在性能上的差异。if-else具有短路特性,但条件增多时JVM会优化提升性能;switch则利用跳转表机制,在处理大量固定选项时表现出色。通过实验对比可见,switch在重复case值处理上通常更快。尽管如此,选择时还需兼顾代码的可读性和维护性。理解这些细节有助于开发者编写出既高效又优雅的Java代码。
356 2
|
安全 Java
Java进阶之枚举
【7月更文挑战第11天】Java枚举是Java 5引入的特性,用于定义固定常量集合,如星期。枚举是继承自`java.lang.Enum`的特殊类,编译后成为final类,每个枚举值是静态final实例。定义枚举用`enum`关键字,如`public enum Weekday {MONDAY, TUESDAY, ...}`。枚举可包含方法和变量,能实现接口但不能继承其他类。例如,`Weekday`枚举可实现`Describe`接口,提供`describe()`方法。在实际应用中,枚举常用于表示如响应状态等固定选项,便于类型安全和代码阅读。
194 8