gpt4 book ai didi

java - 在 java 列表中合并相似对象的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-01 07:57:08 24 4
gpt4 key购买 nike

这是我的问题(简化):

假设我们有一个类:

public class MyClass{
String name;
Double amount;
String otherAttribute;
}

还有一个List<MyClass> myList

假设我们有 myList 中的 2 个元素。假设对象1对象2

我想做的是:

if (object1.name.equals(object2.name){
//add amount of object2 to object1
//remove object 2 from the list
}

考虑到我有一个很大的列表(可能有 100 个元素),我想找到最好且消耗更少的方法来完成我想要的事情。

你有什么建议?

<小时/>

编辑:

  • 是的,100 个项目并不大,但我会针对许多不同大小的列表多次调用此方法(合并相似的对象)。因此,我希望找到最佳实践。

  • 不幸的是,我无法重写 MyClass 的 equals 或 hashCode 方法(客户要求)

最佳答案

我会将对象添加到 HashMap,其中 name 是键,MyClass 是要存储的值。循环遍历列表中的每个对象以将它们添加到 map 中。如果名称不在 map 中,只需添加名称、对象对。如果它已经在 map 中,则将该数量添加到已存储的对象中。循环完成后,从 map 中提取对象。

关于java - 在 java 列表中合并相似对象的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28611876/

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