赞
踩
从java14开始, switch语句有了一个很大的调整, 这就让swicth语句有了更多的操作和选择,在代码上,更加的简便灵活.
- switch 标准方式
- switch - > 用法:
- switch yield 用法:
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标准方式编写代码太多的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("星期日");
}
输出结果如下:
星期二
先来开一段标准模式的代码:
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);
输出结果:
星期二
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。