class if1
{
public static void main(String args[])
{
int a = 100;
if(a==100); //Expected a compile error but did not get one.
}
}
我预计编译器会给我一个错误,但令人惊讶的是它编译得很好。编译器忽略“if”语句是否有任何要处理的语句的理由是什么。为什么它不会像以下情况那样抛出错误?
class if2
{
public static void main(String args[])
{
int a = 100;
if(a == 101) //Compiler complains here...
else
{
System.out.println("in else");
}
}
}
在上面的语句中,编译器抱怨“if”子句没有任何要处理的东西。
有人能告诉我为什么吗?