对学员的考试成绩评测
成绩>=80:良好
成绩>=60:中等
成绩<60:差
public static void main(String[] args) {
//>=80 良好 >=60 中等 <60 差
Scanner input = new Scanner(System.in);
System.out.print("请输入学员的成绩:");
double score = input.nextDouble();
/*多个if 繁琐、可读性差、执行效率低、还可能执行结果有问题
* if(score>=80){
System.out.println("中等");
}
if(score>=60){
System.out.println("良好");
}
if(score<60){
System.out.println("差");
}*/
if(score>=80){
System.out.println("中等");
}else if(score>=60){
System.out.println("良好");
}else{
System.out.println("差");
}
}
将成绩分成几个连续的区间判断
单个if选择结构无法完成
多个if选择结构麻烦且效率低
多重if选择结构语法
if( 成绩>=80){
//代码块1
}else if (成绩>=60){
//代码块2
}else {
//代码块3
}
多重if选择结构中各个条件的顺序可以任意排列吗?
//购买汽车 >=500 凯迪拉克 >=100 帕萨特 >=50 伊兰特 >=10 奥拓
public static void main(String[] args) {
int money = 520; //万
if(money>=500){
System.out.println("太好了,我可以买凯迪拉克");
}else if(money>=100){
System.out.println("不错,我可以买辆帕萨特");
}else if(money>=50){
System.out.println("我可以买辆伊兰特");
}else if(money>=10){
System.out.println("至少我可以买辆奥托开");
}else{
System.out.println("看来我只能买捷安特了!");
}
//多重if条件注意书写顺序,从小到大-从大到小
//否则可能影响执行结果
/*if(money>=100){
System.out.println("不错,我可以买辆帕萨特");
}else if(money>=500){
System.out.println("太好了,我可以买凯迪拉克");
}else if(money>=50){
System.out.println("我可以买辆伊兰特");
}else if(money>=10){
System.out.println("至少我可以买辆奥托开");
}else{
System.out.println("看来我只能买捷安特了!");
}*/
}
使用多重if选择语句处理问题时需堕注意顺序
总结:
多重if语法结构及流程
多重if在编写条件时请注意排列顺序