java基础回顾--2、switch提示 Constant expression required

问题

某次写代码时,switch case 中总是提示 Constant expression required ,用IDEA智能修复,总是修复不好

java基础回顾--2、switch提示 Constant expression required

java基础回顾--2、switch提示 Constant expression required

java基础回顾--2、switch提示 Constant expression required

解决方案

后来查了下才发现是因为 case 中的我使用的是某个对象的静态变量,该变量类型是 Integer,把类型改为 int 即可(建议看完下方 其他注意点 的 第1条

java基础回顾--2、switch提示 Constant expression required

其他注意点

1、对象属性为 Integer 与静态变量 int 的比较,不处理好会空指针

java基础回顾--2、switch提示 Constant expression required

2、switch 中记得 break default,出现Bug就很尴尬了

3、switch 支持 int short byte charenum(jdk1.5及之后),String(jdk1.7及之后)