Java的 Switch Case 语句,可以理解为分支
例子 假设打麻将有四个人 编号为 1 2 3 4 对应名字为 张三,李四,王五,赵六
数据结构
switch(expression){
case value :
//语句
break; //可选
case value :
//语句
break; //可选
//你可以有任意数量的case语句
default : //可选
//语句
}
例子代码
int code = 2;
switch(code){
case 1:
System.out.println("我是张三");
break;
case 2:
System.out.println("我是李四");
break;
case 3:
System.out.println("我是王五");
break;
case 4:
System.out.println("我是赵六");
break;
default:
System.out.println("我只是个看客");
}
输出
我是李四
break 表示退出,当满足某个case的时候,停止下方其他case。
上面的执行流程为
问:code 是多少
执行 case 1 发现不满足
执行 case 2 发现满足,立即退出switch
如果不写break
int code = 2;
switch(code){
case 1:
System.out.println("我是张三");
case 2:
System.out.println("我是李四");
case 3:
System.out.println("我是王五");
case 4:
System.out.println("我是赵六");
default:
System.out.println("我只是个看客");
}
输出
我是李四
我是王五
我是赵六
我只是个看客
程序流程
问:code 是多少
执行 case 1 发现不满足
执行 case 2 发现满足,输出
执行 case 3 不判断是否满足,输出
执行 case 4 不判断是否满足,输出
执行 default 不判断是否满足,输出
如果没有break当前的case一旦判断成功,后续的case都会被执行。
要点:
1. Switch的流程控制,有点象if else 但是在执行效率在多层判断情况下会比if else 高
2. Break 很关键
3. Switch Case里的值不能重复 不能case 1: 下一个继续 case 1: