zoukankan      html  css  js  c++  java
  • java枚举的应用

    最近的项目中,看前辈们用到的枚举比较多,由于自己之前对枚举这种类型不是很了解,遂花费心机看了下,整理记录下。

    1.枚举常量

      系统中定义的状态字段,用的比较多: 

    public enum orderType{
          Pending,Confirm,Cancel,Expire,Success;
    }

    2.定义自定义方法:个人理解可用于转化字段

    public static enum groupTypeEnum{
            gx("搞笑",0),fw("疯玩",1),xx("星象",2),jh("解惑",3),ss("时尚",4),lt("聊天",5),zs("真事",6);
            private final String name;
            private final int index;
            
            private groupTypeEnum(String name,int index){
                this.name = name;
                this.index = index;
            }
            
            public static String getName(int index){
                for(groupTypeEnum gEnum : groupTypeEnum.values()){
                    if(gEnum.index == index){
                        return gEnum.name;
                    }
                }
                return "";
            }
        }

    或者

    public enum OrderStatus
    {
     
        Pending("待处理"), 
        Confirm("已确定"), 
        Cancel("已取消"),  
        Expire("已过期 "),  
        Success("已完成"); 
    
        private final String statusName; 
    
        private OrderStatus(String statusName) {  
             this.statusName = statusName;  
        }    
    }
    
    //取值:
    OrderStatus.Cancel.statusName = 已取消
    OrderStatus.Cancel = Cancel

    ps:数据库mysql中对应的字段类型设置:如果字段是字符串,并且长度固定,可以尝试用char;如果是数值型,可以用tinyint。当然了,mysql支持enum类型,但是如果数据迁移的话,可能比较麻烦。

  • 相关阅读:
    [转] css3变形属性transform
    [转] ReactJS之JSX语法
    [转] 那些在使用webpack时踩过的坑
    [转] jQuery的deferred对象详解
    [转] Webpack-CommonsChunkPlugin
    [转] 用webpack的CommonsChunkPlugin提取公共代码的3种方式
    Refs & DOM
    [转] Webpack的devtool和source maps
    [转] 编译输出文件的区别
    GDB && QString
  • 原文地址:https://www.cnblogs.com/eric-fang/p/4950565.html
Copyright © 2011-2022 走看看