ArrayListを使った多次元配列の比較方法
JAVAでArrayListを使った多次元配列の要素を比較方法で困っています。
下記のコードで、アイテム、数量、金額をランダムに10個配列に追加しています。
private ArrayList<Item> list;
public ArrayList<Item> getItems1() {
return list;
}
public void setItems(ArrayList<Item> items) {
getItems();
}
public Inventory() {
list = new ArrayList<Item>();
}
public void getItems(){
for(int i =0; i<10; i++){
int theItemType = (int)(Math.random()*6+1);
int theQut = (int)(Math.random()*20+1);
int thePrice = (int)(Math.random()*40+101)/20;
list.add(new Item(theItemType, theQut, thePrice));
}
}
public String getItemName() {
if(itemType == 1){
return "シャツ";
}
if(itemType == 2){
return "スカート";
}
if(itemType == 3){
return "ズボン";
}
if(itemType == 4){
return "ネクタイ";
}
if(itemType == 5){
return "靴";
}
if(itemType == 6){
return "靴下";
}
return null;
}
public String toString() {
return getItemName() + " , " + getQut() + " " + getPrice();
}
同じアイテム、金額の場合は、数量を合計して表示させたいです。例えば、配列の要素が下記のような場合、1つ目と2つ目の要素は同じアイテム、金額になるので、数量を20として表示させたいのですが、どのように比較していいのかわかりません。どなたか教えてください。よろしくお願いします。
靴下 , 4, 5
靴下 , 16, 5
ネクタイ , 3, 5
ネクタイ , 16, 6
ネクタイ , 2, 6
ズボン , 16, 6
ズボン , 15, 6
スカート , 3, 6
靴 , 17, 7
シャツ , 17, 7
お礼
ご回答ありがとうございました。もう一度プログラムを組み直してみます。