这是Java语言中的代码片段:
public void name(){
int value = 9;
int o;
if(value > 9)
o = 5;
if(value <= 9)
o = 8;
System.out.println(o);
}
Run Code Online (Sandbox Code Playgroud)
为什么编译器在考虑值的最后一个选项时看不到第二个if语句?它不会编译.最好的祝福
value除非另有说明,否则编译器必须视为可更改.声明它可以final 解决问题:
public void name(){
final int value = 9;
int o;
if(value > 9) o = 5;
if(value <= 9) o = 8;
System.out.println(o);
}
Run Code Online (Sandbox Code Playgroud)