我想通过添加组成的阵列来构建一个ArrayList String name, double price, int quantity
代表不同项目。如果一个项目被添加它等同于一个已在ArrayList中,应该增加quantity
,而不是相加。
我的思维过程是如果值以检查索引阵列1 2之间匹配,并且如果他们这样做,所述第一阵列中的增量索引3的值。这东西是可以在Java中呢?你会如何比较已经在列表中一个新的数组的数组?
你或许应该检查你的模型,并使用一个对象。
创建一个包含三个属性的类。然后一个Map<String, YourObject>
。然后,当你想添加你的对象只是做一个测试之前,
if(map.containsKey(objectName)) {
YourObject object = map.get(objectName);
object.setQuantity(object.getQuantity() + 1);
}
编辑与@Eugene讨论后
YourObject objectToAdd = ...
Map<String, YourObject> map = new HashMap<>();
...
YourObject objectInMap = map.get(objectName);
if(objectInMap != null) {
// increase Quantity in objectInMap
} else {
//Object not existing in the map, never added
//manage initial quantity here
map.put(objectToAdd.getName(), objectToAdd)
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句