Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么开关中的case常量必须是编译时常量_Java - Fatal编程技术网

Java 为什么开关中的case常量必须是编译时常量

Java 为什么开关中的case常量必须是编译时常量,java,Java,为什么在switch中case常量必须是编译时常量?字节码格式要求它是常量,一方面 此外,如果它是一个常量,编译器可以检查所有的值是否都不同——同一个大小写不能重复两次。如果值可以在执行时更改,则无法执行此操作 如果不想使用常量,最好只使用If/else。字节码格式要求它是常量 此外,如果它是一个常量,编译器可以检查所有的值是否都不同——同一个大小写不能重复两次。如果值可以在执行时更改,则无法执行此操作 如果您不想使用常量,最好只使用If/else。的可能重复项的可能重复项

为什么在switch中case常量必须是编译时常量?

字节码格式要求它是常量,一方面

此外,如果它是一个常量,编译器可以检查所有的值是否都不同——同一个大小写不能重复两次。如果值可以在执行时更改,则无法执行此操作


如果不想使用常量,最好只使用If/else。

字节码格式要求它是常量

此外,如果它是一个常量,编译器可以检查所有的值是否都不同——同一个大小写不能重复两次。如果值可以在执行时更改,则无法执行此操作

如果您不想使用常量,最好只使用If/else。

的可能重复项的可能重复项