switchcase

switch介绍

用ja写代码的时候,经常需要用到逻辑判断。除了iElse,还可以通过switch case语句提供多路分支选择流程控制。switch语句根据表达式的值选择要运行的几个操作之一。当选项需要相等判断时,使用switch语句更简洁。switch的case语句可以处理int、short、byte、char、string和enum类型的值,但不能处理long、double和float类型。

switch case语句的基本语法如下:

Switch (expression) {case value 1:语句块1;打破;案例值2:语句块2;打破;…case值n:语句块n;打破;默认值:语句块n+1;打破;}开关的具体使用示例:

private static void test switch(){/* *支持int integer */int type = 1;switch (type){案例1:system . out . println(& # 34;int type 1 & # 34);打破;案例2:system . out . println(& # 34;int type 2 & # 34);打破;默认值:system . out . println(& # 34;int类型未知& # 34;);打破;}/* *支持字节类型*/byte byte type = 1;switch (byteType){案例1:system . out . println(& # 34;字节类型1 & # 34;);打破;案例2:system . out . println(& # 34;字节类型2 & # 34;);break default:system . out . println(& # 34;字节类型未知& # 34;);打破;}/* *支持short type */short short cut = 1;switch (shortType){案例1:system . out . println(& # 34;短型1 & # 34;);打破;案例2:system . out . println(& # 34;短型2 & # 34;);打破;默认值:system . out . println(& # 34;短类型未知& # 34;);打破;}/* *支持char type */char charType = & # 39;一& # 39;;switch(charType){ case & # 39;一& # 39;:system . out . println(& # 34;字符类型a & # 34);打破;案例& # 39;b & # 39:system . out . println(& # 34;字符类型b & # 34);打破;默认值:system . out . println(& # 34;字符类型未知& # 34;);打破;}/* *支持字符串类型(从1.7开始)*/string type = & # 34;一& # 34;;开关(strType){ case & # 34;一& # 34;:system . out . println(& # 34;str型& # 34;);打破;案例& # 34;b & # 34:system . out . println(& # 34;b型str & # 34;);打破;默认值:system . out . println(& # 34;未知字符串类型& # 34;);打破;}/* *支持枚举类型(从1.5开始)*/category category = category . a;switch (category){案例A:system . out . println(& # 34;类别类型a & # 34);打破;案例B:system . out . println(& # 34;类别类型b & # 34);打破;默认值:system . out . println(& # 34;类别类型未知& # 34;);打破;}}公共静态枚举类别{a,b}输出结果:

Int type 1 byte type 1 short type 1 char type 1 Astr type 1 a category type 1注意:Switch (expression):括号中的\’ expression \’只支持部分数据类型,如byte、short、int、char和enumerationJa 7开始支持字符串类型。

2.大小写值:这里的“值”只能是常量表达式。

3.默认:如果没有匹配的案例,将被执行,但默认是不必要的。

switch和if语句的区别

1.switch和if语句都是选择语句,它们允许您在程序运行时控制程序的执行过程。

2.与if-else相比,switch使用二叉树算法。无论有多少个案例,它都使用跳转表直接跳转,而不需要逐个比较查询。大多数情况下,switch会更快,除非if-else的第一个条件为真。

3.switch的case值只能是常量表达式,而if-else可以更灵活。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

发表回复

登录后才能评论