user10745934:
私は構成配列追加することによって、ArrayListのを構築したいString name, double price, int quantity
さまざまなアイテムを表現します。アイテムがArrayListの中に既に存在するものと同一である追加された場合、それは増加すべきであるquantity
追加されるのではなく。
私の思考プロセスは、インデックス1 2との間の配列の値が一致し、かつそれらがない場合は、第一の配列におけるインデックス3の値をインクリメントするかどうかを確認することでした。これはJavaで行うことが可能です何かか?どのようにして、リストにすでにアレイに新しい配列を比較するのでしょうか?
RPresle:
あなたはおそらく、あなたのモデルを検討し、オブジェクトを使用する必要があります。
あなたの3つの属性を含むクラスを作成します。その後Map<String, YourObject>
。あなたがオブジェクトを追加したいときに、直前にテストを行います
if(map.containsKey(objectName)) {
YourObject object = map.get(objectName);
object.setQuantity(object.getQuantity() + 1);
}
EDIT @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)
}