关于java:Java-14中对switch的增强终于可以不写break了

10次阅读

共计 1010 个字符,预计需要花费 3 分钟才能阅读完成。

面对这样的 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。第一工夫理解前沿行业音讯、分享深度技术干货、获取优质学习资源

正文完
 0