如果声明不符合预期...(我责怪netbeans)

时间:2015-02-18 22:16:00

标签: java

我的代码就是这个。

x = 500;
if (x > 0 && x < 100 );
 {
System.out.println(" x is " + x);
 }

由于某些原因netbeans决定在if语句中运行这些东西,即使它不应该因为500&gt; 100.在这一点上,我责备netbeans没有正确运行我的代码xD

1 个答案:

答案 0 :(得分:3)

单个分号是一个空的陈述&#34;结合Java允许没有{}块的if语句,这是一个完美的风暴。

Netbeans这次不应该受到责备。

这实际上就是你传递给编译器的东西..

x = 500;
if (x > 0 && x < 100 ) {
   ; // <== do nothing
}

{ // <== anonymous block
   System.out.println(" x is " + x);
}

Checkstyle这样的代码质量工具会捕获这些错误。它是Checkstyle中的EmptyStatement rule