【发布时间】:2016-03-18 14:06:40
【问题描述】:
为什么这段代码没有给出“无法访问的代码”错误?因为布尔值只能是真或假。
public static void main(String args[]) {
boolean a = false;
if (a == true) {
} else if (a == false) {
} else {
int c = 0;
c = c + 1;
}
}
【问题讨论】:
-
检查 JLS 给出了答案(一如既往):“如果 if-then-else 语句可访问,则 else-statement 是可访问的。”。由于
if和else if都可以访问,所以else语句也是如此。 -
@Kidiskidvogingogin 不,您与
Boolean混淆,这是对象。boolean是原始的。 -
在多线程环境中,如果变量再次为真,当它刚刚到达 else 时,它可能首先为假
标签: java boolean unreachable-code