版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011870280/article/details/84861730
当用@Builder注解时,类里面的初始化字段就无效,比如下面类中的totalAmt和lineNum字段就会置为null。
@Builder
public class FileExport {
private String charset;
private String[] fields;
private String amtField;
private BigDecimal totalAmt=BigDecimal.ZERO;
private AtomicLong lineNum=new AtomicLong();
private String delimiter;
private PrintWriter writer;
}
对于这种情况,可以在需要保留默认值的字段上加上@Builder.Default注解解决
@Builder
public class FileExport {
private String charset;
private String[] fields;
private String amtField;
@Builder.Default
private BigDecimal totalAmt=BigDecimal.ZERO;
@Builder.Default
private AtomicLong lineNum=new AtomicLong();
private String delimiter;
private PrintWriter writer;
}