だから私の問題は、自動販売機を持っていることです。自動販売機には、スロットごとに最大数のアイテムがあるスロットがあります。
商品名と数量で補充方法を実行する場合、供給された商品に数量を追加する必要があります。インデックスがスロット番号である文字列配列とストック配列があります。
問題は、リストに同じ名前の製品が 2 回ある場合、製品の最初のインデックスが最大値に達しますが、製品の 2 番目のインスタンスは常に必要な数よりも 1 少ないことです。
元。restock(candies, 8) を実行すると、スロット 0 に 10、スロット 2 に 3 が提供されるはずですが、代わりに 10 と 2 が得られます。
public void restockProduct(String product, int quantity) {
int index = -1;
// If there is nothing to add, quit
if (quantity == 0) {
return;
}
for (int i = 0; i < products.length; i++) {
//Find location of product
if (products[i].equals(product)) {
index = i;
if(stock[index] <= max)
break;
}
}
if(index >=0){
stock[index]++;
restockProduct(product, quantity-1);
}
ありがとう