您现在的位置是:课程教程文章
java switch和if语句的不同
2023-12-15 21:21课程教程文章 人已围观
本教程操作环境:windows7系统、java10版,DELL G3电脑。
1.控制表达式不同
switch后面的控制表达式只能是byte、short、char、int、String和枚举类型,不能是boolean类型
if后面的控制表达式是boolean类型;
2.结构不同
switch:主要是将choose中的值和某一个case值进行比较,而case值是一个确定的值。
if else:每个执行的语句前都会有一个条件,这个条件可以是类似x==0的这种匹配一个确定值的布尔表达式,也可以是x>10的这种匹配一个范围的布尔表达式。
switch语句
switch(expr){ case condition1{ //代码块... break; } case condition2{ //代码块... break; } ... case conditionN{ //代码块... break; } dafault:{ //代码块... } }
if else语句
public class IfStatementExample { public static void main(String args[]){ int num=70; if( num < 100 ){ /* This println statement will only execute, * if the above condition is true */ System.out.println("number is less than 100"); } } }
3.执行效率不同
switch的执行效率要高于if语句。
switch会生成一个数据统计表,将case后面的值全部统计起来,匹配时先拿表中的数据进行比较,如果有则直接跳转到相应case语句;如果没有,则直接跳转到default语句。
if else语句需要一条一条的去进行取值范围的判断,直到找到正确的选项位置,这样的话势必会浪费大量的时间。
以上就是java switch和if语句的不同,在使用范围上if语句更广一点,但也逐条判断在效率方面会比 switch要慢,在实际运用中大家可以根据需求进行挑选。
课程教程:java switch和if语句的不同上一篇:js数组使用es6遍历方法
下一篇:没有了