public class Switch {
public static void main(String[] args){
int i=65;
switch(i+1){
case 65:
System.out.println("A");
case 66:
System.out.println("B");
case 67:
System.out.println("C");
break;
default:
System.out.println("D");
}
}
}
为什么case 65不走呢?他也没有break啊???作者: 许坤 时间: 2012-11-16 19:04
貌似它只能找他自己或者比它大的case;而67带break;所以就停下了!如果不带i+1;而是i=65的话那就连带着65也执行了!作者: 初艳春 时间: 2012-11-16 22:38
int i=65;
switch(i+1){
case 65:
System.out.println("A");
case 66:
因为i的初始值为65,但是switch(i+1)时,i=66,所以case 65就跳过了,直接执行case 66。作者: 王斌 时间: 2012-11-22 10:59
结果 B ,C switch case 是开关语句,遇到符合表达式语句才会开始执行,还好顺序执行,直到遇到break会跳出
switch(表达式)
{
case 常量表达式1:语句1;
....
case 常量表达式2:语句2;
default:语句;
}
default就是如果没有符合的case就执行它,default并不是必须的.
case后的语句可以不用大括号.
switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型.
一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break,利用这一特性可以让好几个case执行统一语句.