java常量枚举法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java常量枚举法相关的知识,希望对你有一定的参考价值。

不要再在纠结什么底层,什么牛逼技术,学会思考,改变思维模式

一、枚举的地位

在你平时的编码当中你会发现很多设计模式里都少不了类型的身影,这样也就造就了枚举不可获缺的地位(类型)

二、常量

我们常常用常量 来定义一些错误码等

如果是常量你的代码可能是这样

1 public final static class   SysMsg{
2       public  static final   STATUS_SUCCESS_CODE="0";
3       public  static final   STATUS_FAILURE_CODE="-1";
4       public  static fianl    SYS_SUCCESS_CODE="1000";
5       public  static final    SYS_SIGN_CODE="1001";
6       public  static fianl    SYS_SING_MSG="非法请求";        
7 }

使用枚举的话是这样的

 1 public enum   EnumT{
 2        SUCCESS(1,"操作成功"),FAILURE(1,"操作失败"),FAILURE(4,"签名失败");
 3         private  String name;
 4         private  int   index;  
 5         private EnumT(String name,int index){
 6               this.name=name;
 7               this.index=index;
 8        }
 9         public String getName(int index){
10                 for(EnumT c:EnumT.values()){
11                       if(c.getIndex==index){
12                               return c.name;
13                       }
14                  }  
15                        return nuljul;
16         }
17         public String getName(){
18             return   name;
19         }
20 
21 }                        

三、创建字符串常量枚举

public   enum  EnumTask{
      INITIAL("初始化"),PROCESSING("处理中"),PROCESSED("处理完成"),FAILURE("处理失败");  
       private String  status;
       EnumTask(String status){
                this.status=status;
       }
        public String  getStatus(){
             return   status;
       }    
}

四、反向查找法

相信大家看到上面的例子已经有所见解

反向查找思路   定义一个map       静态代码块中利用遍历values()  将值作为键设置map     提供一个外部调用方法

 

巧妙的将枚举运用到设计中会很有用的

以上是关于java常量枚举法的主要内容,如果未能解决你的问题,请参考以下文章

java中枚举常量的命名规范是怎样的

java常量枚举法

编写高质量代码:改善Java程序的151个建议(第6章:枚举和注解___建议83~87)

为啥使用常量而不是枚举?

Java 枚举7常见种用法

java枚举类型enum用法