您的位置:

Java 14:新的特性和改进

一、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!