【发布时间】:2012-12-09 16:05:51
【问题描述】:
可能重复:
Why is this code giving an “Unreachable Statement” error?
这似乎很简单的问题,我在一本书中找到了这个问题。如果有人帮我弄清楚为什么我会出错。
do {
System.out.print("inside do");
} while (false);
while (false) { // error
System.out.print("inside while");
}
System.out.print("outside");
我想,根据我的说法,输出应该在 doutside 内。但是,它显示 Compiler Error : Unreachable Statement。然后,我试图弄清楚,为什么,它显示 Compilation error : Unreachable Statement* 。所以,我把上面的代码改成这样
boolean i = false;
do {
System.out.print("inside do");
} while (false);
while (i) { // ok
System.out.print("inside while");
}
System.out.print("outside");
现在,它显示了预期的输出,即 inside dooutside 。所以,我的问题是 - 第一种和第二种情况有什么区别? 另外,当我检查
if(false){
//something here
}
然后,上面的代码执行没有任何错误。
【问题讨论】:
标签: java if-statement while-loop control-flow unreachable-statement