我有以下代码:
public class Main {
static final String fu = Week.class.getName();
public static void main(String[] arg0){
String h = "dummy";
switch (h) {
* case fu:
System.out.println(8);
break;
default:
break;
}
}
}
现在,Eclipse抱怨*
case expressions must be constant expressions
。但是我将fu
设置为我所知道的一样恒定!为什么这还不够,我该怎么办(if-else除外)? 最佳答案
为什么这还不够
因为它不是JLS 15.28规则的编译时常量。
为什么这还不够,我该怎么办(if-else除外)?
基本上没有什么-除非您使用字符串文字,否则显然不是很愉快。
关于java - 最终变量的常数不足以适应开关情况,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29218002/