【发布时间】:2015-04-15 13:44:18
【问题描述】:
我一直在使用 Java SE 7 Programmer 1 学习指南中的测试来测试自己。关于 if 语句有这个问题。它询问哪个选项不会编译:
> a) if(true) ;
> b) if(true) {}
> c)if(true) {;}
> d)if(true) {;;}
> e)if (true) ;{};
> f) all of them will compile
答案是 f。而且我无法理解或解释为什么答案 c、d 和 e 会编译。
【问题讨论】:
-
您是否尝试过将这些行放入 IDE 中?
-
为什么你认为答案 c、d 和 e 不正确?
-
因为
;在 Java 中是合法的(如果没有帮助的话)。 -
@TheLostMind 是的,它们会编译。问题是为什么
-
@Nazerke -
;是一个有效的空语句。{}表示有效的空块
标签: java if-statement syntax conditional-statements