在庫数を更新せよ
あなたは、Product
のリストから指定された商品名の商品を探し、その在庫数を新しい値に更新したい。
該当する商品が見つかれば在庫数を更新し、その後に更新内容を表示する処理を作成せよ。
該当商品がなければ "該当商品なし"
と出力せよ。
要件
- メソッド名:
updateStockByName
(ProductUtil
に定義) - 引数:
ArrayList<Product> products
String keyword
(商品名)int newStock
(新しい在庫数)
- 処理:
- 商品名が一致する
Product
を探す - 在庫数を
newStock
に変更 - 変更内容を以下の形式で出力:
- 商品名が一致する
りんごの在庫数を10に更新しました
- 見つからなければ
"該当商品なし"
を出力
Main.java(テストコード)
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Product> products = new ArrayList<>();
products.add(new Product("りんご", 10));
products.add(new Product("みかん", 5));
products.add(new Product("バナナ", 3));
// テストケース01: 存在する商品を更新
ProductUtil.updateStockByName(products, "りんご", 20);
// 出力: りんごの在庫数を20に更新しました
// テストケース02: 存在しない商品を指定
ProductUtil.updateStockByName(products, "パイナップル", 10);
// 出力: 該当商品なし
}
}
ヒント
- 在庫数の変更は
Product
にsetStock(int newStock)
を追加して対応 - まず
equals()
で名前が一致する商品を探す - 見つかったら
setStock(...)
で更新 →break
で終了 - 見つからなかった場合に備えて
boolean
フラグを使う
→解答例