Switch用法

it2022-05-05  301

Switch用法

(1)语法定义

switch(变量){ case 常量1: 执行内容; break(可选) case 常量2: 执行内容; break(可选) default (可选) 执行内容; } //break 是可选择项,可写可不写 //default 是可选择项,可写可不写 //default 位置不是固定的,可任意选择位置 switch(变量){ default (可选) 执行内容; case 常量1: 执行内容; break(可选) case 常量2: 执行内容; break(可选) }

case 后可以写的常量

jdk版本数据类型jdk(1.0-1.4)byte,short,int,char;jdk(1.5)byte,short,int,char,enum(枚举);jdk(1.7)byte.short,int,char,enum,String;

执行流程

switch内的变量和case后的常量进行比较,如果相同则执行后面的语句,遇到break,或是执行完所有内容,结束运行

特殊说明

1.default:是默认匹配,如过执行到default项,后面的语句一定会执行; 2.default:如果写在所有case语句的上面,没有break,那下面的case的常量无论是否匹配都会被执行, 直到在某个case中遇到break或是执行完整个switch,才结束执行; 3.当某个case 后的常量匹配后,如果执行语句最后没有break,则这个case下面的case无论是否匹配,都会被执行,并且会向下传递,直到遇到某个case里面的break,或是执行完所有的case里面的内容,才结束Switch语句。

穿透

switch中代码相同的case是可以归并的,类似于在if-else的Boolean中使用"||"。

int h= 0; switch(h) { case 0: case 1: case 3: case 4: System.out.println("都小于5"); break; case 5: System.out.println("等于5"); break; case 6: case 7: case 8: case 9: System.out.println("都大于5,小于10"); break; default: System.out.println("都是数字"); } 小例子 int x = 2,y=3; switch(x) { default: y++; case 3: y++; break; case 4: y++; } System.out.println("y="+y); ======================= 输出结果y=5;

此文章纯属个人总结,如有问题,欢迎评论指正;


最新回复(0)