Skip to main content

Java 13 新特性 (EOL)

warning

生命周期结束时间(EOL): 2020/12/16

官方发布介绍页面:https://openjdk.org/projects/jdk/13/

1. Switch 表达式 (第二次预览)​

Switch 表达式在 JDK 13 中进行了第二次预览,允许在 switch 语句中使用表达式,并返回值。

int num = 2;
String result = switch (num) {
case 1 -> "one";
case 2 -> "two";
case 3 -> "three";
default -> "unknown";
};
System.out.println(result); // two

2. 文本块 (第一次预览)​

文本块允许在多行字符串中使用更简洁的语法。

String textBlock = """
Hello,
World!
""";
System.out.println(textBlock);

3. 动态CDS归档​

动态 CDS 归档允许在运行时将类数据共享 (CDS) 归档。

// 使用命令行参数来启用动态 CDS 归档
// -XX:ArchiveClassesAtExit=hello.jsa

4. ZGC: 取消使用未使用的内存​

ZGC 垃圾回收器现在可以取消使用未使用的内存。

// 使用命令行参数来启用 ZGC
// -XX:+UseZGC

5. 重命名的文件系统 API​

FileSystems 类增加了 newFileSystem 方法,用于重命名文件系统。

Path path = Paths.get("test.zip");
try (FileSystem fs = FileSystems.newFileSystem(path, null)) {
Files.walk(fs.getPath("/")).forEach(System.out::println);
}