stream 链式结构 求和

         Double aDouble = Optional.ofNullable(wayfairMonthBill.getPaymentAmountDetailJson())
                                .filter(StringUtils::isNotBlank).map(paymentAmountDetailJson -> JSON
                                        .parseArray(paymentAmountDetailJson, WayfairMonthBillPaymentDetailCustom.class))
                                .map(paymentAmountDetails -> paymentAmountDetails.stream()
                                        .map(WayfairMonthBillPaymentDetailCustom::getPaymentAmounts).flatMap(Collection::stream)
                                        .mapToDouble(item -> item).sum()).orElse(0.0);

                        return aDouble;
原文地址:https://www.cnblogs.com/zrboke/p/15432566.html