【发布时间】:2015-10-10 08:29:14
【问题描述】:
我想知道使用 if 语句或 switch 之间是否有任何效率差异。例如:
if(){
//code
}
else if(){
//code
}
else{
//code
}
我相信即使第一个 if 语句为真,程序也需要检查所有 if 语句。
switch(i){
case 1:
//code
break;
case 2:
//code
break;
但是在switch里面,有一个break命令。我的接近正确吗?如果不是,您能解释一下它们之间的效率差异吗?
【问题讨论】:
-
“程序需要去检查所有的 if 语句,即使第一个 if 语句是真的”,你为什么这么认为?如果我们使用
ifs 代替else ifs 会怎样? -
@Simze 问题What is the difference between IF-ELSE and SWITCH? 及其答案在java 或不可知的方式中都没有解决效率问题。
-
stackoverflow.com/questions/97987/… 在这里,他们深入了解编译器对语句的解释。由于该主题已多次成为讨论的主题,因此可能重复。
标签: java if-statement switch-statement