switch語句不能使用枚舉的成員變量


出現問題:

寫了個代碼,需要使用枚舉的來判斷對於的事務處理

然而這里的編譯器報錯:constant expression required

switch 的case中,必須要用常量,想了一下,枚舉里面的code是可以相同的

實在不想在 類里面 定義 public static final int code 這樣的常量來代替枚舉

解決方法:

在枚舉類中添加一個根據code返回枚舉的方法  參數類型為Integer,為其他類型時需自行調整方法代碼

public static ChatEnum getByCode(Integer code){
        for(ChatEnum v:values()) {
            if(v.code==code) {
                return v;
            }
        }
        return null;
 }

 這樣就不會報錯了! 更多關於枚舉的知識請閱讀  https://www.cnblogs.com/wffzk/p/15294234.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM