gpt4 book ai didi

java - 使用 Java 8 中的 Lambda 的列表中 double 值的总和

转载 作者:行者123 更新时间:2023-12-01 06:32:58 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Sum values from specific field of the objects in a list

(6 个回答)


4年前关闭。




我想遍历 Accounts 列表,并使用 来总结双倍信用金额Java 8 lambda 功能 .有任何想法吗?

import lombok.*;
import java.util.List;

@Data
public class Account {

private Double amount;
@Getter(AccessLevel.NONE)
private Boolean active;
private String companyCode;
private Long accountNumber;

public Boolean isActiveAccount() {
return active;
}
}

我有一个账户列表,我想使用 Lambda Java 1.8 功能计算信用金额,我该如何处理,而不是我在下面显示的传统方法?
//Lets pretend that the list has 3000 account-elements.
List<Account> accountsList = new ArrayList<>();

Double totalAmount = 0.0;

for (Account account : accountsList) {
Double accAmountList = account.getAmount();
if(null != accAmountList) totalAmount += accAmountList;
}

最佳答案

从列表中创建一个流,映射到一个双值列表

total=accountList.stream()
.filter(account ->account!=null&&
account.getAmount()!=null).mapToDouble(Account::getAmount)
.sum()

关于java - 使用 Java 8 中的 Lambda 的列表中 double 值的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45486363/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com