- 多分支条件控制语句if elseif
多分支结构(多条路必走其一,如果所有分支路径都没有运行,那么该语句无意义),满足条件if时作为一个分支,不满足if时,进入下一个else if 判断,根据判断结果,选择多分支中的一条执行。(可以无限延伸的条件控制语句)
if(条件判断1){
语句1 //条件判断1为true时执行
}else if(条件判断2){
语句2 //条件判断2为true时执行
} else if(条件判断3){
语句3 //条件判断3为true时执行
}
………………
else{
语句n //以上条件均不成立时执行
}
-
课堂练习(学生成绩等级)
小程序(ConditionDemo01):根据输入的学生成绩,来判断学生的学习等级:成绩>=90为优秀,90>成绩>=80为良好,80>成绩>=60为及格,成绩<60为不及格。
解答:
package day04;
import java.util.Scanner;
public class ConditionDemo01 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入学生成绩(整数):");
int score=input.nextInt();
if(score<0||score>100){
System.out.println("输入数据有误!");
}else if(score>=90){
System.out.println("学习成绩优秀!");
}else if(score>=80){
System.out.println("学习成绩良好!");
}else if(score>=60){
System.out.println("学习成绩及格!");
}else{
System.out.println("学习成绩不及格!");
}
}
}
运行结果:
- 条件控制语句switch case(多分支结构)
控制语言switch case的特点:
- 效率高,结构清晰
- 只用于整数,判断相等关系的条件控制语句(不能判断大于、小于等关系)
switch (num){
case 1: //相当于 if num==1;
执行语句1;
break;
case 2 : //相当于 if num==2;
执行语句2;
break;
case 3 : //相当于 if num==3;
执行语句3;
break;
………………
default: //当前面所有情况都不满足时执行
执行语句K;
break;
}
小程序(ConditionDemo02):根据输入的心情选项,来给出心理咨询建议,心情选项包括:1:开心,2:郁闷,3:孤单,4:愤怒,5:悲伤,对应的心理咨询建议为:
1:你的状态真棒!将快乐分享给更多朋友吧!
2:参加一些体育锻炼,或者看个喜剧片吧!
3:大胆地向心爱的ta表白吧,也许有惊喜哟!
4:冲动是魔鬼,找个空旷的地方大喊几声,会好的!
5:伤心总是难免的,你又何苦一往情深。
解答:
package day04;
import java.util.Scanner;
public class ConditionDemo02 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入心情选项包括:1:开心,2:郁闷,3:孤单,4:愤怒,5:悲伤:");
int num=input.nextInt(); //进行判断的数必须是整数
switch(num){
case 1:
System.out.println("你的状态真棒!将快乐分享给更多朋友吧!");
break; //如果满足了此路径条件,其他分支语句不在执行
case 2:
System.out.println("参加一些体育锻炼,或者看个喜剧片吧!");
break;
case 3:
System.out.println("大胆地向心爱的ta表白吧,也许有惊喜哟!");
break;
case 4:
System.out.println("冲动是魔鬼,找个空旷的地方大喊几声,会好的!");
break;
case 5:
System.out.println("伤心总是难免的,你又何苦一往情深。");
break;
default: //当前面所有情况都不满足时执行
System.out.println("输入选项错误!");
break;
}
}
}
运行结果: