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