一、Records
Java 14中引入了Records,这是一种新的类声明,用于声明轻量、不可变值类。Records类似于传统Java类,但通过简化声明,目的是更容易地定义数据聚合类型。
public record Person(String name, int age) {}
// 创建新的 record 类示例
Person person = new Person("Tom", 20);
// 访问 record 类示例的属性
String name = person.name();
int age = person.age();
这种语法对于编写数据传输对象(DTO)以及其他轻量级值对象非常有用。
二、Switch表达式
Java 12中引入了Switch表达式,但它只用于简化Case标签的编写。Java 14的更新扩展了Switch表达式的功能,引入了“箭头”语法,从而更轻松地编写流畅的判断语句。
String day = "MONDAY";
int number = switch (day) {
case "MONDAY", "FRIDAY", "SUNDAY" -> 6;
case "TUESDAY" -> 7;
case "THURSDAY", "SATURDAY" -> 8;
case "WEDNESDAY" -> 9;
default -> {
int n = day.length();
yield n;
}
};
三、Text Blocks
在Java 13中,我们可以更轻松地创建多行字符串,但是在处理单引号和双引号时,我们需要添加转义字符。Java 14引入了文本块,这样我们就可以轻松地编写格式良好且易于阅读的多行字符串,无需转义字符。
String message = """
Hello, world!