赞
踩
switch(表达式){
case 表达式常量1:
语句1;
break;
case 表达式常量2:
语句2;
break;
......
case 表达式常量n:
语句n;
break;
[default:语句n+1;]
}
其中,一个 case 表达式常量称为标号,代表一个 case 分支的入口。switch 语句在运行时首先计算 switch 圆括号中“表达式”的值(注意:这个值必须是整型或字符型的);同时后面各个 case 表达式常量的值的类型要与 switch 圆括号中“表达式”的值类型一致。
一个 case 语句代表一个操作,当 switch 表达式的值与哪一个 case 表达式常量的值匹配时,执行其对应的语句,执行完成后遇到 break 输出;default 子句是可选的,当表达式的值与 case 表达式常量的值都不匹配时,就运行 default 子句并输出。
switch 表达式的值决定选择哪个 case 分支,如果找不到相应的分支,就直接从”default” 开始输出;当程序执行一条 case 语句后,如果 case 分支中没有 break 和 return 语句,程序会执行紧接于其后的语句。对比下面几段代码的运行结果:
代码一:
int x = 3;
switch(x){
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
default:
System.out.println("default");
}
运行结果:
default
代码二:
int x = 1;
switch(x){
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
default:
System.out.println("default");
}
运行结果:
1
2
default
代码三:
int x = 1;
switch(x){
case 0:
System.out.println(0);
case 1:
System.out.println(1);
break;
case 2:
System.out.println(2);
default:
System.out.println("default");
}
运行结果:
1
代码四:
int x = 3;
switch(x){
default:
System.out.println("default");
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
}
运行结果:
default
0
1
2
case B:
C;
case 是常量表达式,也就是说 B 的取值只能是常量或者 int、byte、short、char,如果你需要在此处写一个表达式或者变量,那么就要加上单引号。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。