在Java中存在两个基本的选择结构 if 和 switch
①基本if选择结构:可以处理单一或组合条件的情况
注:条件结果类型比须为:boolean型
流程图如图:
double score = 90.1;
if(score>90){
System.out.println("老师奖励他iphone6s");
}
输出为:老师奖励他iphone6s
②if-else选择结构:可以处理简单的条件分支情况
流程图 如下:
例:
int javaScore = 91;
int musicScore = 81;
if((javaScore>90&&musicScore>80)||(javaScore==100&&musicScore>70)){
System.out.println("给奖励");
}else {
System.out.println("不给奖励");
}
}
③多重if选择结构:可以处理分段的条件分支情况
流程图如图:
例:
int score = 65;
if(score>=80){
System.out.println("良好");
}else if(score>=60){
System.out.println("中等");
}else {
System.out.println("差");
}
④嵌套if选择结构:可以处理复杂的条件分支情况
流程图如下:
System.out.println("请输入百米赛跑的秒数:");
double second = sc.nextDouble();
if (second < 10) {
System.out.println("恭喜进入决赛");
System.out.println("请输入您的性别:");
String gender = sc.next();
if (gender.equals("男")){
System.out.println("进入男子组");
}else {
System.out.println("进入女子组");
}
}else{
System.out.println("没能进决赛");
}
System.out.println("比赛结束");
⑤switch选择结构 多重分支并且条件判断是等值判断的情况
例:
Scanner sc = new Scanner(System.in);
System.out.println("请输入您出生的后两位:");
byte year = sc.nextByte();
switch (year) {
case 95:
System.out.println("猪年");
break;
case 96:
System.out.println("鼠年");
break;
case 97:
System.out.println("牛年");
break;
case 98:
System.out.println("虎年");
break;
default:
System.out.println("其他");
}