Lombok(Project Lombok)是一个 Java 库,它可以通过注解来自动生成 Java 类的常用方法,如 getter、setter、equals、hashCode 和 toString 等。除了这些常用方法,Lombok 还提供了一些其他的注解,用于生成默认值、日志、构造函数等。
在 Lombok 中,生成默认值的注解主要是 @Builder.Default
。下面是一个示例代码,演示了如何使用 @Builder.Default
生成默认值:
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class Person {
private String name;
private int age;
// 使用@Builder.Default注解为字段提供默认值
@Builder.Default
private String country = "Unknown";
public static void main(String[] args) {
// 使用Lombok生成的builder方法创建对象
Person person = Person.builder()
.name("Alice")
.age(30)
.build();
// 输出对象的属性值
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
System.out.println("Country: " + person.getCountry()); // 默认值为"Unknown"
}
}
在上面的示例中,我们使用了 @Builder
注解来生成一个带有 Builder 模式的构造函数,并使用 @Builder.Default
注解为 country
字段提供了默认值"Unknown"。这样,在创建 Person
对象时,如果没有为 country
字段指定值,它将自动设置为默认值"Unknown"。
总之,@Builder.Default
注解允许你为 Lombok 生成的 Builder 模式中的字段设置默认值,从而简化了对象的创建过程。