从Java Object计算值?

我有这个Java对象,用于存储项目:

public class PaymentDetailsItem { private String name; private String amount; private int quantity; private String currencyID; public PaymentDetailsItem(String name, String amount, int quantity, String currencyID){ this.name = name; this.amount = amount; this.quantity = quantity; this.currencyID = currencyID; } ............ } 

我使用List来存储几个对象。 如何将每个对象库的总金额汇总到列表中?

您可以使用Java 8 Stream API并实现以下内容:

 public static void main(String[] args) { PaymentDetailsItem payment = new PaymentDetailsItem("test", "100.00", 10, "1"); PaymentDetailsItem payment2 = new PaymentDetailsItem("test number 2", "250.00", 10, "2"); List payments = new ArrayList<>(); payments.add(payment); payments.add(payment2); List amounts = payments.stream().map(PaymentDetailsItem::getAmount).collect(Collectors.toList()); System.out.println("Here we have the extracted List of amounts: " + amounts); String totalAmount = amounts.stream() .reduce((amount1, amount2) -> String.valueOf(Float.valueOf(amount1) + Float.valueOf(amount2))).get(); System.out.println("Total amount obtained by using .reduce() upon the List of amounts: " + totalAmount); System.out.println("Or you can do everything at once: " + payments.stream().map(PaymentDetailsItem::getAmount) .reduce((amount1, amount2) -> String.valueOf(Float.valueOf(amount1) + Float.valueOf(amount2))).get()); } 

请记住为amount属性实现getter。