Java中switch的三种用法方式

Java中switch的三种用法方式从 java14 开始 switch 语句有了一个很大的调整 这就让 swicth 语句有了更多的操作和选择 在代码上 更加的简便灵活 switch 标准方式 switch gt 用法 switchyield 用法 标准方式 intdayOfWeek 2 switch dayOfWeek case1 System out println 星期一 case2 System out println 星期二

从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 – > 用法:

使用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); 

输出结果:

星期二 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/201007.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月20日 上午10:08
下一篇 2026年3月20日 上午10:08


相关推荐

  • 状态模式「建议收藏」

    状态模式「建议收藏」状态模式

    2022年4月21日
    52
  • 数据库多表联合查询附简单例子

    数据库多表联合查询附简单例子多表联合查询多表联合查询可以通过连接运算实现,而连接运算又可以通过广义笛卡尔积后在进行选择运算来实现。 Select 多表联合查询语句Select 列名 [[,列名]…]from 表名1,表名2,,…Where 查询条件; 可以使用as为表或者字段(属性)取别名; Select 列名 [[,列名]…]from 表名1[as] 别名1,表名2[a…

    2022年6月10日
    358
  • 报关与报检的区别和联系_简述报关与报检的区别

    报关与报检的区别和联系_简述报关与报检的区别区别是,报关是向海关申报,海关查验的重点是申报的货物与实际是否相符报检是向商检局申报,商检的查验重点是货物是否符合合同的或国家或国际的相关标准和要求.所有进出口货物均必须向海关申报不是所有的进出口货物都需要报商检,(看货物的HS编码是否属于免检范围)联系是,先报检后报关,凭商检检货合格后出具的”换证凭条”(单)换通关单,再凭通关单及其他相关单据向海关申报问题:通关单

    2025年11月24日
    5
  • pycharm自动导入包_python自动到包快捷键

    pycharm自动导入包_python自动到包快捷键在终端通过pip装好包以后,在pycharm中导入包时,依然会报错。新手不知道具体原因是什么,我把我的解决过程发出来。解决方案一:在Pycharm中,依次打开File—>Settings,弹窗如下图:点击右侧“+”号,输入自己需要导入包的名称,在下面列表中可以看到自己需要的包,详图如下:最后点击InstallPackage,等待安装完成即可。解决方案二:前提是已经在终端通过pipin…

    2022年8月28日
    4
  • LFU实现

    LFU实现publicstatic HashMap Integer Node records key 是用来查找 publicIntege publicIntege HashMap Node NodeList heads 是根据 times 来排序的 publicIntege Node NodeList Integer Node

    2026年3月19日
    2
  • 磁盘阵列 mysql_Mysql 系列 磁盘阵列

    磁盘阵列 mysql_Mysql 系列 磁盘阵列RAID基本思想就是把多个相对便宜的硬盘组合起来,使其组合成一个容量更大、更安全的硬盘组.目前已有的RAID硬盘组方案至少有几十种,其最常用的要数RAID5与RAID10硬盘组方案。软RAID(software-basedRAID)是基于软件的RAID。它可能是最普遍的被使用的RAID阵列,这是由于现在的很多服务器操作系统都集成了RAID功能。硬RAID(这里只讨论基于总线的RAID)是由内建…

    2022年6月11日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号