目录
从java14开始, switch语句有了一个很大的调整, 这就让swicth语句有了更多的操作和选择,在代码上,更加的简便灵活.
标准方式
int dayOfWeek = 2; switch (dayOfWeek) { case 1: System.out.println(\"星期一\"); case 2: System.out.println(\"星期二\"); case 3: System.out.println(\"星期三\"); case 4: System.out.println(\"星期四\"); case 5: System.out.println(\"星期五\"); case 6: System.out.println(\"星期六\"); default: System.out.println(\"星期日\"); }
輸出如下:
星期二
星期三
星期四
星期五
星期六
星期日
从输出结果发现case代码块被穿透了,使用break防止case代码执行穿透,代码如下:
int dayOfWeek = 2; switch (dayOfWeek) { case 1: System.out.println(\"星期一\"); break; case 2: System.out.println(\"星期二\"); break; case 3: System.out.println(\"星期三\"); break; case 4: System.out.println(\"星期四\"); break; case 5: System.out.println(\"星期五\"); break; case 6: System.out.println(\"星期六\"); break; default: System.out.println(\"星期日\"); break; }
輸出如下:
星期二
switch - > 用法:
使用switch标准方式编写代码太多的break造成代码冗余可读性不高 可以借助函数式接口和lambda表达式简化书写
代码如下:
int dayOfWeek = 2; switch (dayOfWeek) { case 1 -> System.out.println(\"星期一\"); case 2 -> System.out.println(\"星期二\"); case 3 -> System.out.println(\"星期三\"); case 4 -> System.out.println(\"星期四\"); case 5 -> System.out.println(\"星期五\"); case 6 -> System.out.println(\"星期六\"); default -> System.out.println(\"星期日\"); }
输出结果如下:
星期二
switch yield 用法:返回值
先来开一段标准模式的代码:
String weekday = null; int dayOfWeek = 2; switch (dayOfWeek) { case 1: weekday = \"星期一\"; break; case 2: weekday = \"星期二\"; break; case 3: weekday = \"星期三\"; break; case 4: weekday = \"星期四\"; break; case 5: weekday = \"星期五\"; break; case 6: weekday = \"星期六\"; break; default: weekday = \"星期日\"; break; } System.out.println(weekday);
输出结果如下:
星期二
从上面代码不难看出我们通过条件匹配为变量赋值,再来看看switch yield的简化写法
int dayOfWeek = 2; String weekday = switch (dayOfWeek) { case 1: yield \"星期一\"; case 2: yield \"星期二\"; case 3: yield \"星期三\"; case 4: yield \"星期四\"; case 5: yield \"星期五\"; case 6: yield \"星期六\"; default: yield \"星期日\"; }; System.out.println(weekday);
输出结果:
星期二
做猪小侠源码的代理,提供一站式服务
如果你不懂得搭建网站或者服务器,小程序,源码之类的怎么办? 第一通过本站学习各种互联网的技术 第二就是联系客服,我帮帮你搭建(当然要收取部分的费用) 第三成为我们的代理,我们提供整套的服务。