枚举应用案例

来源:互联网 发布:js字符串类型 编辑:程序博客网 时间:2024/06/04 18:22

//应用案例

import java.util.HashMap;

import java.util.Map;

 

public enum InvoiceStatusEnum {

UNSET(-1, "未知"),

HANDLED(1, "等待处理"), 

COMPLETED(2, "处理完成"), 

;

private int code;

private String description;

private static Map<Integer, InvoiceStatusEnum> CodeMap;

static {

CodeMap = new HashMap<Integer, InvoiceStatusEnum>();

InvoiceStatusEnum[] values = InvoiceStatusEnum.values();

for (InvoiceStatusEnum value : values) {

CodeMap.put(value.getCode(), value);}

}

public static InvoiceStatusEnum fromCode(int code){

if(CodeMap.containsKey(code)){//如果存在key就返回否则未知

return CodeMap.get(code);

}

return InvoiceStatusEnum.UNSET;

}

private InvoiceStatusEnum(int code,String description){

this.code = code;

this.description = description;

}

public int getCode() {

return code;

}

public void setCode(int code) {

this.code = code;

}

public String getDescription() {

return description;

}

public void setDescription(String description) {

this.description = description;

}

}

//相应基础知识

public class TestMain  

{  

    {  

        System.out.println("对象块");  

    }  

    static  

    {  

        System.out.println("静态块");  

    }  

  

    // 构造方法的调用是在new 对象()时才会调用  

    // 在声明时是会调用对象{}  

    public TestMain()  

    {  

        System.out.println("构造器");  

    }  

  

    public static void main(String[] args)  

    {  

        TestMain t = null;  

        t = new TestMain();  

    }  

}  

执行结果:静态块、对象块、构造器

0 0
原创粉丝点击