我试图从a中删除重复的对象ArrayList并对某个字段的值求和.例如:
如果我有一个ArrayList对象"硬件":
{[Name: Ram, Quantity: 2],
[Name: Keyboard, Quantity: 3],
[Name: Mouse, Quantity: 5],
[Name: Keyboard, Quantity 5]}
Run Code Online (Sandbox Code Playgroud)
我想写一个能找到重复数并将数量相加的函数.在这种情况下,键盘是重复的,所以最终ArrayList应该是这样的:
{[Name: Ram, Quantity: 2],
[Name: Keyboard, Quantity: 8],
[Name: Mouse, Quantity: 5]}.
Run Code Online (Sandbox Code Playgroud)
我已经尝试过它,它似乎有时会起作用,但有时会错过元素.
List<Hardware> myList = new ArrayList<Hardware>();
myList.add(new Hardware("Ram", 2);
myList.add(new Hardware("Keyboard", 3);
myList.add(new Hardware("Mouse", 5);
myList.add(new Hardware("Keyboard", 5);
for(int i = 0; i < list.size(); i++){
Hardware current = list.get(i);
for(int j = 1; j < list.size(); j++){
Hardware compare = list.get(j);
if(current.getName().equals(compare.getName)){ …Run Code Online (Sandbox Code Playgroud)