【发布时间】:2012-04-15 06:23:46
【问题描述】:
假设我创建了一些像这样的对象类
public class thing {
private String name;
private Integer num;
public oDetails (String a, Integer b) {
name = a;
num = b;
}
...gets/ sets/ etc
现在我想创建一个数组列表来保存一些这样的对象类。
ArrayList<thing> myList = new ArrayList<thing>;
thing first = new thing("Star Wars", 3);
thing second = new thing("Star Wars", 1);
myList.add(first);
myList.add(second);
我想包含某种逻辑,以便在这种情况下......当我们尝试添加对象“second”而不是向 arrayList 添加新对象时,我们将 second.getNum() 添加到 first.getNum ()。因此,如果您要遍历 ArrayList 它将是
"Star Wars", 4
我很难想出一种优雅的方式来处理这个问题。并且随着数组列表的增长,搜索它以确定是否有重复的名称项变得很麻烦。任何人都可以提供一些指导吗?
【问题讨论】:
-
您似乎想改用 java.util.Map。
-
我认为最好的方法是实现“无重复”数组列表。在这里查看我的答案:stackoverflow.com/a/35788695/130028
标签: java arraylist no-duplicates