分支结构
1、- if...else if结构:多条路
1)语法:
if(boolean-1){
语句块1
}else if(boolean-2){
语句块2
}else if(boolean-3){
语句块3
}else{
语句块4
}
2)执行过程:
判断boolean-1,若为true则执行语句块1(结束),若为false则
再判断boolean-2,若为true则执行语句块2(结束),若为false则
再判断boolean-3,若为true则执行语句块3(结束),若为false则执行语句块4(结束)
3)说明:
语句块1/2/3/4,只能执行其中之一---------多选1
package day04;
import java.util.Scanner;
//成绩等级判断
public class ScoreLevel {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入成绩:");
double score = scan.nextDouble();
//带数(888,-45,95,85,65,42)
if(score<0 || score>100){
System.out.println("成绩不合法");
}else if(score>=90){ //合法
System.out.println("A-优秀");
}else if(score>=80){
System.out.println("B-良好");
}else if(score>=60){
System.out.println("C-中等");
}else{
System.out.println("D-不及格");
}
}
}
2、switch...case结构:多条路
- 优点:效率高、结构清晰
- 缺点:只能对整数判断相等
- break:跳出switch
1> 注意:switch后的数的类型有:byte,short,int,char,String,枚举
package day;
import java.util.Scanner;
public class CommandBySwitch {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请选择功能: 1.存款 2.取款 3.查询余额 0.退出");
int command = scan.nextInt();
switch(command){
case 1:
System.out.println("存款业务...");
break;
case 2:
System.out.println("取款业务...");
break;
case 3:
System.out.println("查询余额业务...");
break;
case 0:
System.out.println("退卡业务");
break;
default:
System.out.println("输入错误");
}
}
}