ジャワ:DTOのコレクション内の値の合計

VINIT:

MyDTO、JavaでamountFieldの合計を計算8

private Double getSum(List<MyDTO> myDTOList) {
    return myDTOList.stream().map(MyDTO::getAmount).reduce(0d, Double::sum);
}
また:

あなたは使用することができますStream.mapToDoubleに変換しDoubleStreamた後、使用しますDoubleStream.sum

return myDTOList.stream().mapToDouble(MyDTO::getAmount).sum();

もちろんのこと、上記のために働くものamountであることinteger量の種類が既にある場合、コードは、あなたとこの条、まだ細かい作業で共有しながら、同様のタイプdouble


またはあなたのDTOオブジェクトがnullになることができれば、あなたが使用してこれらの値をフィルタリングすることができ、自分がコメントで指摘したように:

return myDTOList.stream().filter(Objects::nonNull).mapToDouble(MyDTO::getAmount).sum();

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=232441&siteId=1