第四章 switch选择结构
switch语句的格式
switch(表达式) {
// 表达式可接收的有:
// 基本数据类型: byte, short, char, int
// 引用数据类型:枚举(JDK1.5),String字符串(JDK1.7)
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
switch执行流程
1、先计算表达式的值
2、然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句
注意点
(一) case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
(二)default可以省略吗?
1、可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
2、特殊情况:
-
- ( 1)case就可以把值固定。
-
(三)break可以省略吗?
- 1、最后一个可以省略,其他最好不要省略
- 2、会出现一个现象:case穿透。
- 3、最终我们建议不要省略
-
(四)default一定要在最后吗?
1、不是,可以在任意位置。但是建议在最后
- 2、switch语句的结束条件
- 3、遇到break就结束了
- 4、执行到switch的右大括号就结束
* byte可以作为switch的表达式吗? 可以
* long可以作为switch的表达式吗? 不可以
* String可以作为switch的表达式吗? 可以