前言:
最近学习到了java程序流程控制中分支结构的if和switch语句,记录一下使用心得。
分支结构定义:根据条件,选择对应的代码执行
if语句
if语句根据条件判断不同,有三种表达格式
1,需要条件输出一种结果时
格式如下:
if(条件){结果}
例:检测体温系统,若体温达到37度以上,则触发警报
double x = 37.5;
if (x >= 37 ){
System.out.println("体温异常!体温异常!");
}
当x为大于37的数值时,输出“体温异常!体温异常!”,小于37时,则没有任何显示
2,需要条件输出两种结果时
格式如下:
if(条件){结果}
else{不满足条件时的另一种结果}
例:体温检测系统,若体温达到37度以上,触发报警;若未达到37度,显示体温正常
double c = 36.2;
if (c >= 37) {
System.out.println("体温异常!禁止入内");
} else
{
System.out.println("体温正常,请通过");
}
当c为大于37的数值时,输出“体温异常!禁止入内”,小于37时,则输出“体温正常,请通过”
3,需要条件输出多种情况时
if(a条件){a结果}
else if (b条件){b结果}
else if (c条件){c结果}
else (不满足abc的条件){另外一个结果}
例:成绩录入系统,0-59为F,60-69为C,70-79为b,80-89为a,90-100为s
double q = 10;
if (q >= 0 && q < 60){
System.out.println("你的成绩为'F'");
}else if (q >= 60 && q < 70){
System.out.println("你的成绩为'C'");
}else if (q >= 70 && q < 80){
System.out.println("你的成绩为'B'");
}else if (q >= 80 && q < 90){
System.out.println("你的成绩为'A'");
}else if (q >= 90 && q <= 100){
System.out.println("你的成绩为'S'");
}else {
System.out.println("你的成绩有误");
}
当q等于10时,输出的结果为“你的成绩为'F'”。
switch语句
switch是一种准确判断,作用在确定值上,而不是作用在范围上。
表示格式如下:
switch(变量){
case a:
a结果;
break;
case b:
b结果;
break;
...
default:
不符合上述所有条件的结果;
}
例:做一个心情表,使其在每天都知道自己的心情
String week = "星期三";
switch(week) {
case "星期一":
System.out.println("die");
break;
case "星期二":
System.out.println("fuck");
break;
case "星期三":
System.out.println("no");
break;
case "星期四":
System.out.println("angry");
break;
case "星期五":
System.out.println("yes");
break;
case "星期六":
System.out.println("lalala");
break;
case "星期日":
System.out.println("sad");
break;
default:
System.out.println("????");
}
当我输入星期三时,我知道我的心情为“no”
if语句和switch语句的比较
if语句是一个功能非常强大的语句,能完成switch的功能,像是上面那个“心情表”的例子,也可以用if语句来写,如下:
String xq = "星期二" ;
if (xq == "星期一"){
System.out.println("die");
}else if(xq == "星期二"){
System.out.println("fuck");
} else if(xq == "星期三"){
System.out.println("no");
}else if(xq == "星期四"){
System.out.println("angry");
}else if(xq == "星期五"){
System.out.println("yes");
}else if(xq == "星期六"){
System.out.println("lalala");
}else if(xq == "星期日"){
System.out.println("sad");
}else{
System.out.println("???");
}
但通过对比,可以看出来,if是一个繁琐的语句,在筛选条件时,if语句是自上至下依次筛选,当代码较多时,运行速度是较慢的。
switch的优势在于,当确定变量值后,switch能够准确迅速的筛选出条件,并执行结果,性能较好。
结论:
if语句功能强大,但繁琐,易出错,性能较差。当执行区间比较条件的时候,使用if语句
switch语句功能一般,性能好。当执行准确值/固定值比较条件的时候,使用switch语句
---------------------------------------------------------------------------------------------------------------------------------循环结构可以看这里
java程序流程控制——循环结构下for语句,while语句和do-while语句的比较及死循环/循环嵌套/break语句/continue语句的使用
想巩固下分支结构和循环结构的用法可以看这里
Scanner(文本扫描器)和Random(随机数生成器)的说明及使用,运用分支结构和循环结构编写猜数字游戏
最后:
如果您看到了这篇文章,同时您也在学习java,希望您阅读这篇文章,希望与您一起讨论