第四章 选择结构(二)
1.switch选择结构
1)为什么使用switch选择结构
下我们来看一个问题
问题:韩嫣参加计算机编程大赛:
如果获得第一名,将参加麻省理工大学组织的一个月夏令营;
如果获得第二名,将获得惠普笔记本一个;
如果获得第三名,将奖励移动硬盘一个;
否则,没有任何奖励。i
分析:这个问题可以用用多重if选择结构来解决。的确,使用多重if选择结构完全可以解决
示例:int mingCi=3;
switch(score){
case 1;
参加麻省理工大学组织的一个月夏令营
break;
case 2;
获得惠普笔记本一个
break;
case 3;
奖励移动硬盘一个
break;
default;
没有任何奖励
break;
}
示例1解决了这个问题,可是看上去很烦琐。这个问题跟前面的问题比起来有什么不同?显然,这个问题是等值的的判断,之前的问题是区间判断。对此Java提供了另一种结构,可以方便地解决等值判断问题,这就是switch选择结构。
2.什么是switch结构
1)语法:switch(表达式){
case 常量 1:
//代码块1;
break;
case 常量 2:
//代码块2;
break;
default:
//代码块n;
break;
}
2)关键字
switch:表示“开关”,这个开关就是switch关键字后面小括号里表达式的值,JDK1.7后,switch语句小括号里可以是int、short、byte、char、枚举类型、String类型表达式。。1
case:表示“情况”,case后可以是int、short、byte、char、枚举类型、String类型,通常是一个固定的值。case块可以有多个,顺序可以改变,但是每个case后常量的值也必须各不相同。
default:表示“默认”,即其他情况都不满足。default后要紧跟冒号。default块和case块的先后顺序可以变动,不会影响程序执行的结果。通常,default块放在末尾,也可以省略。
break:表示“停止”,即跳出当前结构。
3.如何使用switch选择结构
所有的多重if选择结构都可以用switch选择结构代替。通过观察,可以看出. switch 选择结构的条
件只能是等值的判断,而且只能是整型或字符型的等值判断。也就是说,switch 选择结构只能用于
判断一个整型变量或表达式是否等于某个整数值的情况,或者一个字符型变量或表达式是否等于某
个字符的情况,并且每一一个case后面的常量值都不同。而多重if选择结构既可以用于判断条件是等
值的情况,也可以用于判断条件是区间的情况