我碰巧阅读了SCJP认证的练习材料,我刚刚跳过了流程控制等的一章,他们给人的印象是“else if
”本身就是一个关键词。我一直以为它只是一个普通的else
,只包含一个if
块,省略了大括号。
那么,这是什么?
编辑:我想强调的是,这个问题更像是“我的兴趣”类别,而不是“严肃的商业”类别。
答案 0 :(得分:10)
是的,它们是两个单独的关键字 - Java language specification未指定else if
关键字。实际上,正如其他海报所说的那样,if
语句中包含else
语句。
编辑:许多培训/教育材料似乎暗示else if
实际上是一个关键字(事实上,它通常被视为关键字),但我倾向于认为这更多是为了为了清晰/简单,以牺牲准确性为后果。
答案 1 :(得分:6)
这两个单词之间的空格表示两个单独的关键字。
答案 2 :(得分:6)
实际上是说
else {
if { ... }
}
答案 3 :(得分:3)
这是两个关键词。
其他后面可能跟一个块或一个语句。
在 else if 的情况下。该声明是另一个 if 声明。
<强>更新强>
提及其他如果是深层嵌套的 if 语句的常见样式选择并使这种情况比嵌套更具可读性,那就没什么坏处。除非我需要使用开关语句来实现这种下降行为,否则我会使用 else if 。
答案 4 :(得分:1)
我相信两个单独的关键字。但我很肯定你没有其他没有 if 。
答案 5 :(得分:1)
虽然有些语言确实有'elsif','elseif'或'else if'作为单独的语句(有点像'case'语句),但Java并不是其中之一。
答案 6 :(得分:0)
我不是Java专家,但在C语言中,它肯定被定义为两个不同的关键词,Java从C语法的那一部分中偷走了。
无论如何,除了考试上的愚蠢问题之外,它在实践中不会有所作为。无论哪种方式,效果都是相同的。
答案 7 :(得分:0)
如果使用调试器打开程序集,则会识别出它的“if”语句。