Java13新特性

JDk13⾥⾯新增的多⾏⽂本块

  • 多⾏⽂本块
    旧:在java代码⾥⾯编写多⾏源码带有特殊字符则需要转义,如HTML,sql等
    新:原⽣字符串⽂字(raw string literals),它可以跨多⾏源码⽽不对转义字符进⾏转义
旧:
String html = "<html>\n" +
 " <body>\n" +
 " <p>Hello, world</p>\n" +
 " </body>\n" +
 "</html>\n";
String query = "SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n" +
 "WHERE `CITY` = 'INDIANAPOLIS'\n" +
 "ORDER BY `EMP_ID`, `LAST_NAME`;\n";
新:
String html = """
 <html>
 <body>
 <p>Hello, world</p>
 </body>
 </html>
 """;

JDK13新特性之增强switch表达式

  • 旧:没有break,则匹配的case后⾯会⼀直输出, value类型 可以是 byte、short、int 、char、String 类型
  • 新:使⽤箭头函数,不⽤声明break,会⾃动终⽌,⽀持多个值匹配,使⽤逗号分隔
public void testNewSwitch(int i){
 switch(i){
 case 0 -> {
 System.out.println("zero");
 System.out.println("这是多⾏语句");
 }
 case 1,11,111 -> System.out.println("one");
 case 2 -> System.out.println("two");
 default -> System.out.println("default");
 }
 }
  • 建议
    • 多关注LTS版本如JDK8,JDK11,JDK17(未发布),这个是重点需要学的;功能性的则挑选常⽤的
    • 特性进⾏掌握即可;
      预览性的可以先不学或者简单知道就⾏,例如 AOT,ZGC,CDS 这些,未来的LTS版本中会更新,所以可以关注未来的LTS版本

猜你喜欢

转载自blog.csdn.net/lin819747263/article/details/102751108