Java 14中对switch的增强,终于可以不写break了

Java 14中对switch的增强,终于可以不写break了

面对这样的if语句,你是不是很难受呢?

if (flag == 1) {  log.info("didispace.com: 1");} else if (flag == 2) {  log.info("didispace.com: 2");} else if (flag == 3) {  log.info("didispace.com: 3");} else if (flag == 4) {  log.info("didispace.com: 4");} else {  log.info("didispace.com: x");}

是不是想到用switch来改进一下?

switch(flag) {  case 1:     log.info("didispace.com: 1");     break;  case 2:    log.info("didispace.com: 2");    break;  case 3:    log.info("didispace.com: 3");    break;  case 4:    log.info("didispace.com: 4");    break;  default:    log.info("didispace.com: x");}

舒服了吗?是不是感觉还是不那么舒服呢?

试试Java 14中对Switch表达式的增强功能,继续改造:

switch(flag) {  case 1  -> log.info("didispace.com: 1");  case 2  -> log.info("didispace.com: 2");  case 3  -> log.info("didispace.com: 3");  case 4  -> log.info("didispace.com: 4");  default -> log.info("didispace.com: x");}

这下是不是舒服了?在Java 14的switch表达式增强中,引入了对Lambda语法的支持,让每个case分支变得更为简洁。同时,容易遗忘的break也可以省略了。

Tips:这里的JEP 361特性,经历了JDK 12、JDK 13两个预览版本之后才在JDK 14中定稿,所以部分功能在JDK 12和JDK 13中也会看到,但真正使用,还是建议在JDK 14之后的版本中应用。

好了,今天的分享就到这里!如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!另外,不要走开,关注我!持续更新Java新特性专栏!

欢迎关注我的公众号:程序猿DD。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部