当此方法返回void时,如何从方法ifPresent
中选择值?
我要应用的逻辑是:如果对象deliveryInfo
不是null
,则应提取交货数量并将其设置为对象dto
,但要使用Optional,而不进行任何空检查。
Optional<TT021DeliveryCodingContainerDto> deliveryInfo =
tt021OrderingBusinessHandler
.getDeliveryCodingContainersByDeliveryAndOrderDetail(
delivery.getId(), position.getOrderDetails().getId());
deliveryInfo.ifPresent(TT021DeliveryCodingContainerDto::getDeliveredQuantity);
dto.setQuantityDelivered(deliveredQuantity);
最佳答案
像deliveryInfo.ifPresent(i -> dto.setQuantityDelivered(i.getDeliveredQuantity());
一样?
如果要从方法中返回某些内容,请使用map
代替ifPresent
;这将返回另一个包装结果的Optional(如果有)。
关于java - 如何从 optional ifPresent中选择值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29791514/