我使用Lombok-Builder从entity对象构建api java对象
RewardApi.builder()
.rewardId(rewardEntity.getrewardId())
.rewardTitle(rewardEntity.getrewardTitle())
.rewardText(rewardEntity.getrewardText())
.rewardFor(rewardEntity.getrewardFor())
.rewardType(rewardEntity.getrewardType())
.rewardFromDate(rewardEntity.getrewardFromDate().toZonedDateTime())
.rewardToDate(rewardEntity.getrewardToDate().toZonedDateTime())
.isDisplayOn(rewardEntity.getIsDisplayOn())
.createdId(rewardEntity.getCreatedId())
.updatedId(rewardEntity.getUpdatedId())
.createdDate(rewardEntity.getCreatedDate().toZonedDateTime())
.lastModifiedDate(rewardEntity.getLastModifiedDate().toZonedDateTime())
.build();我在设置lastModifiedDate字段时获取nullPointerException,因为entity对象将该字段作为null获取,并在null之上执行toZonedDateTime()
如何在没有传统方法的情况下解决这个问题(如下所述)
if (null!=rewardEntity.getLastModifiedDate(){....}
我想在使用builder-pattern设置变量时检查null,而不是在构建对象后执行null检查。有什么办法吗?
发布于 2019-04-16 23:46:56
rewardEntity.getLastModifiedDate() != null ? rewardEntity.getLastModifiedDate().toZonedDateTime() : null 它被称为条件运算符,这是一个三元运算符,因为它有三个操作数。
https://stackoverflow.com/questions/55712016
复制相似问题