「商品注文シミュレータを完成させよ」
あなたは、商品情報と注文情報をもとに、次のような処理を行う 商品注文シミュレータ を作成します。
以下の2つのMapがすでに存在しています:
Map<String, Integer> priceMap
:商品名 → 単価(円)Map<String, Integer> orderMap
:商品名 → 注文数(個)
以下のデータを使って、各商品の合計金額を計算し、最終的な総売上金額を出力してください。
登録済み商品データ(priceMap)
"Apple" → 120
"Banana" → 80
"Orange" → 100
注文情報(orderMap)
"Apple" → 3
"Banana" → 5
"Grape" → 2 ← この商品は登録されていない!
要件
- 存在しない商品(ここでは
"Grape"
)が注文された場合は 「エラーとして表示」し、計算対象に含めないこと - 正常な商品は「商品名、単価、個数、小計」を出力すること
- 最後に総売上金額を出力すること
for
文、Map
、containsKey()
を使用すること(Stream API は使わない)
テストコード(Main.java)
public class Main {
public static void main(String[] args) {
MapUtil.runOrderSimulator();
}
}
ヒント
orderMap
をループし、商品名でpriceMap.containsKey()
を確認する- 見つかれば「単価 × 注文数」で小計を計算
- 見つからなければ
System.out.println("エラー: ...")
で表示 - すべての小計を足し合わせて総売上を求める
→解答例