我怎麼能改寫以下使用lambda,而不是內部函數:我將如何改寫這個使用lambda
List<ExtraService> extraServices = product.getServices().getExtraService().stream()
.map(new Function<com.novasol.bookingflow.api.entities.products.ExtraService, ExtraService>() {
@Override
public ExtraService apply(com.novasol.bookingflow.api.entities.products.ExtraService es) {
ExtraService extraService = new ExtraService();
extraService.setServiceId(es.getServiceID());
extraService.setPriceUnitCode(es.getPriceUnitCode().intValue());
extraService.setServiceGroup(es.getServiceGroup().intValue());
extraService.setMaxUnits(es.getMaxUnits().intValue());
return extraService;
}
}).collect(toList());
另一個想法可能是有複製構造函數,然後'.map(ExtraService :: new)' –
@AlexisC。有趣的一點 - 就像這個清潔,並會在這裏做一些實驗:-) –