switch case 中如何使用枚舉

枚舉類: 測試

public enum ContractTempletEnum {
    PPT(1,"普通模板"),SIGNT(2,"簽約模板");
    private Integer id;
    private String name;
    
    private ContractTempletEnum(Integer id, String name) {
        this.id = id;
        this.name = name;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    
    /**
     * 轉換list
     * @return
     */
    public static List<Map<String, Object>> toList(){
        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
        ContractTempletEnum[] contractTempletEnum = ContractTempletEnum.values();
        for(ContractTempletEnum e : contractTempletEnum) {
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("id", e.getId());
            map.put("name", e.getName());
            list.add(map);
        }
        return list;
    }
    
 
    public static ContractTempletEnum getById(Integer id){
        for(ContractTempletEnum transactType : values()){
            if (transactType.getId() == id) {
                   //獲取指定的枚舉
                return transactType;
            }
        }
        return null;
    }
    
}
測試類this

public class TestEnum {
    
    public static void main(String[] args) {
        switch (ContractTempletEnum.getById(1)) {
        case PPT:
            
            break;
 
        case ESIGNT:
            break;
        }
    }
}
 
--------------------- 
做者:qq_34724270 
來源:CSDN 
原文:https://blog.csdn.net/qq_34724270/article/details/81234671 
版權聲明:本文爲博主原創文章,轉載請附上博文連接!.net

相關文章
相關標籤/搜索