if…else语句、嵌套if…ELSE语句和case语句实现分支选择的区别

您所在的位置:网站首页 ifelse语句注意事项 if…else语句、嵌套if…ELSE语句和case语句实现分支选择的区别

if…else语句、嵌套if…ELSE语句和case语句实现分支选择的区别

2024-07-04 16:46| 来源: 网络整理| 查看: 265

If…else语句是从上到下判断,当条件满足,则执行语句体;

嵌套if…ELSE语句是当外面的if条件成立才判断里面的if;

Case语句是只需访问对应索引号的表项从而到达定位分支的目的;

if else:

if…else if语句和多个if语句的区别还是很大的,if…else if在任何一个环节满足条件的时候就将会终止判断,只处理一个满足条件的情况;而对于多个if语句,将会对每一个判断条件进行判断,自然而然会导致程序的执行效率降低。在多个判断条件的情况下,使用if…else if语句相对于使用多个if语句而言,可以减少程序的判断次数,提高效率。

语法: if(条件1) 语句1; //如果条件1为真,则执行语句1; else if(条件2) 语句2; //如果条件1为假且条件2为真,则执行语句2; else if(条件3) 语句3; //如果条件12都为假且条件3为真,则执行语句3; . . . else 语句4;

最终只有一个出口.即当满足条件1时,执行语句1.当不满足条件1时,往下走,判断是否满足条件2,如果还是不满足,则继续往下走,一直走到else语句,说明之前的条件都不满足,最终执行语句4;

嵌套if…ELSE:

我们可以在if语句内嵌套if语句。同样,我们也可以在if语句内嵌套if-else语句,在if-else语句内嵌套if语句,以及在if-else语句内嵌套if-else语句。这种灵活性也很容易让人混淆程序。

语法: if(条件1) { if(条件2) { 语句1; //如果条件1为真,且条件2为真则执行语句1; } else { 语句2; //如果条件1为真,且条件2为假则执行语句2; } } else 语句3 //如果条件1为假则执行语句3; switch case:

在多个判断条件的情况下,不仅可以使用if…else if语句,还可以使用switch case语句。一般情况下,当判断条件较多的情况下,使用switch case语句的效率会高于使用if…else if语句。switch…case与if…else if的根本区别在于,switch…case会生成一个跳转表来指示实际的case分支的地址,而这个跳 转表的索引号与switch变量的值是相等的。从而,switch…case不用像if…else if那样遍历条件分支直到命中条件,而只需访问对应 索引号的表项从而到达定位分支的目的。所以从效率上来说由于if…else if的遍历性,代码执行效率是不高的。

语法: switch(表达式){ case 值1: //表达式的值和 值1匹配上了,需要执行的代码; break; case 值2: //表达式的值和 值2匹配上了,需要执行的代码; break; case 值3: //表达式的值和 值3匹配上了,需要执行的代码; break; default: //如果表达式的值和以上的case后面的值都没有匹配上,那么就执行这里的代码。 break; }

从表达式值等于某个case语句后的值开始,它下方的所有语句都会一直运行,直到遇到一个break为止。随后,switch语句将结束,程序从switch结束大括号之后的第一个语句继续执行,并忽略其他case。假如任何一个case语句的值都不等于表达式的值,就运行可选标签default之下的语句。假如表达式的值和任何一个case标签都不匹配,同时没有发现一个default标签,程序会跳过整个switch语句,从它的结束大括号之后的第一个语句继续执行。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3