Java - 对象列表中属性的总和值

问题描述 投票:0回答:1

我有一个具有不同属性的对象列表,我想计算其中一个属性(总计),为每个其他属性(过滤器)添加其他属性(值)的值。

例如:

List [
 Object 1 {
  filter: a,
  value: 10,
  total: ?
 },
 Object 2 {
  filter: a,
  value: 20,
  total: ?
 },
 Object 3 {
  filter: b,
  value: 30,
  total: ?
 },
 Object 4 {
  filter: b,
  value: 40,
  total: ?
 },
]

期望的结果是:

List [
 Object 1 {
  filter: a,
  value: 10,
  total: 30
 },
 Object 2 {
  filter: a,
  value: 20,
  total: 30
 },
 Object 3 {
  filter: b,
  value: 30,
  total: 70
 },
 Object 4 {
  filter: b,
  value: 40,
  total: 70
 },
]

我正在考虑使用 Stream API 来解决这个问题,但我不知道如何实现。

java list java-stream
1个回答
0
投票

当然!如果您有 Java 中的对象列表,并且想要在不编码的情况下对这些对象的某些属性值求和,您可以按照以下步骤操作:

定义对象结构:确保列表中的每个对象都具有您想要对其值求和的必要属性。

迭代列表:循环遍历对象列表。

访问属性值:对于每个对象,访问要对其值求和的属性。

累积值:在迭代列表时汇总属性的值。

输出总和:迭代所有对象并对属性值求和后,您将获得总和。

例如,如果您有一个 Person 对象列表,并且想要对他们的年龄求和,则可以迭代 Person 对象列表,访问每个 Person 的年龄属性,累加这些年龄,最后输出总和历代。

© www.soinside.com 2019 - 2024. All rights reserved.