我正在使用 Lombok @Builder
注释,但我希望某些 String
字段是可选的并且默认为 ""
避免 NPE。是否有捷径可寻?我找不到任何东西。
或者,自定义 @Getter
以在变量为 null
时返回默认值的方法。
最佳答案
从版本 v1.16.16
开始,他们添加了 @Builder.Default
。
@Builder.Default
lets you configure default values for your fields when using@Builder
.
示例:
@Setter
@Getter
@Builder
public class MyData {
private Long id;
private String name;
@Builder.Default
private Status status = Status.NEW;
}
PS: 很高兴他们还添加了警告,以防您没有使用 @Builder.Default
。
Warning:(35, 22) java: @Builder will ignore the initializing expression entirely. If you want the initializing expression to serve as default, add @Builder.Default. If it is not supposed to be settable during building, make the field final.
关于java - Lombok 中带有@Builder 或@Getter 注释的默认字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40314445/