如何通过lambda流sum()
来汇总客户点?
public class CustomerDetail {
private int point = 1;
private Integer id;
public CustomerDetail() {
this(0);
}
public CustomerDetail(int id) {
this.id = id;
}
public void setPoint(int point) {
this.point = point;
}
public int getPoint() {
return point;
}
}
HashMap<String, List<CustomerDetail>> list = new HashMap<String, List<CustomerDetail>>()
答案 0 :(得分:2)
您可以这样做
int sumOfPoints = list.values().stream()
.flatMap(List::stream)
.mapToInt(CustomerDetail::getPoint)
.sum();