fgo*_*lez 1 java optional java-8
如何从方法中选择值ifPresent,因为此方法返回 void?
我要应用的逻辑是:如果对象deliveryInfo不是null,则取交货数量并将其设置到对象中dto,但使用Optional,不进行任何空检查。
Optional<TT021DeliveryCodingContainerDto> deliveryInfo =
tt021OrderingBusinessHandler
.getDeliveryCodingContainersByDeliveryAndOrderDetail(
delivery.getId(), position.getOrderDetails().getId());
deliveryInfo.ifPresent(TT021DeliveryCodingContainerDto::getDeliveredQuantity);
dto.setQuantityDelivered(deliveredQuantity);
Run Code Online (Sandbox Code Playgroud)
Optional.ifPresent() 是一个接受消费者的终端方法。消费者是一个函数,需要一些论据和消耗他们,并且没有返回。您可以从作为使用者传递的 lambda 表达式中使用的参数中选择值。
Optional<TT021DeliveryCodingContainerDto> deliveryInfo =
tt021OrderingBusinessHandler
.getDeliveryCodingContainersByDeliveryAndOrderDetail(
delivery.getId(), position.getOrderDetails().getId());
deliveryInfo.map(info -> info.getDeliveredQuantity())
.ifPresent(quantity -> dto.setQuantityDelivered(quantity); // you can replace those with method references
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1363 次 |
| 最近记录: |