选择结构_标准的switch语句与选择结构_穿透的switch语句

选择语句
 
选择语句--switch
switch语句格式:
switch(表达式)
 { 
case 常量值1: 语句体1;
 break;
 case 常量值2: 
语句体2; break;
 ... 
default: 
语句体n+1; 
break; 
}
首先计算出表达式的值
其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结
束。
最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

 

 

public static void main(String[] args) {
 //定义变量,判断是星期几 
int weekday = 6; 
//switch语句实现选择 
switch(weekday) {
 case 1:
 System.out.println("星期一");
 break;
 case 2: 
System.out.println("星期二"); 
break; 
case 3:
switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),JDK7后可以接收字符串。
 
case的穿透性
在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运
行,直到遇到break,或者整体switch结束。
public static void main(String[] args) {
 int i = 5; 
switch (i){
 case 0:
 System.out.println("执行case0"); 
break;
 case 5:
 System.out.println("执行case5");
 case 10:
System.out.println("执行case10"); 
default:
 System.out.println("执行default"); 
} 
}
上述程序中,执行case5后,由于没有break语句,程序会一直向后走,不会在判断case,也不会理会break,直接
运行完整体switch。
由于case存在穿透性,因此初学者在编写switch语句时,必须要写上break。

switch语句使用的注意事项:
1.多个case后面的数值不可以重复。
2. switch后面小括号当中只能是下列数据类型:基本数据类型: byte/short/char/int
引用数据类型: String字符串、enum枚举工
3. switch语句格式可以很灵活:前后顺序可以颠倒,而且break语句还可以省略。“匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者整体结束为止。”

 
 
 
posted @ 2022-06-28 22:20  zj勇敢飞,xx永相随  阅读(84)  评论(0编辑  收藏  举报