在上一章我们学习了if选择结构,你会发现if选择结构主要针对的是区间判断,但现实生活中不只有区间判断还有等值判断。
public class Compete {
public static void main(String[] args) {
int mingCi = 3; //名次
if (mingCi == 1) {
System.out.println("参加麻省理工大学组织的1个月夏令营");
}else if (mingCi == 2) {
System.out.println("奖励惠普笔记本电脑一部");
}else if (mingCi == 3) {
System.out.println("奖励移动硬盘一个");
}else{
System.out.println("没有任何奖励");
}
}
}
你会发现代码非常繁琐,这是因为判断属于等值判断。为了解决等值判断的问题,java给我么提供了switch选择结构。
switch选择结构使用
语法格式
switch(表达式) {
case 常量1:
//代码块1;
break;
case 常量2:
//代码块2;
break;
……
default:
//代码块n;
break;
}
这里switch、case、default、break都是java的关键字。
案例
如果以王玲参加计算机编程大赛为例,其运行结果如图4-2-1所示。
具体代码如示例2所示。
示例2
public class Compete2 {
public static void main(String[] args) {
int mingCi=1; //名次
switch (mingCi) {
case 1:
System.out.println("参加麻省理工大学组织的1个月夏令营");
break;
case 2:
System.out.println("奖励惠普笔记本电脑一部");
break;
case 3:
System.out.println("奖励移动硬盘一个");
break;
default:
System.out.println("没有任何奖励");
break;
}
}
}
镶套if选择结构:在if选择结构中又包含了一个或多个if选择结构的情况,这种结构一般用于较为复杂的流程控制中。if选择结构镶套的形式很多,如以下形式是其基本的结构。
语法格式
if(条件 1){
//代码块1
} else if (条件2){
//代码块2
}else {
//代码块3
}
其中,else if 块可以有多个,也可以没有,需要几个else if 块完全取决于实际需求。else块最多有一个或没有,else 块必须要放在else if块之后。