ã€Œå•†å“æ³¨æ–‡ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚¿ã‚’完æˆã•ã›ã‚ˆã€
ã‚ãªãŸã¯ã€å•†å“æƒ…å ±ã¨æ³¨æ–‡æƒ…å ±ã‚’ã‚‚ã¨ã«ã€æ¬¡ã®ã‚ˆã†ãªå‡¦ç†ã‚’è¡Œã† å•†å“æ³¨æ–‡ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚¿ を作æˆã—ã¾ã™ã€‚
以下ã®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("エラー: ...")ã§è¡¨ç¤º - ã™ã¹ã¦ã®å°è¨ˆã‚’è¶³ã—åˆã‚ã›ã¦ç·å£²ä¸Šã‚’求ã‚ã‚‹
→解ç”例


コメント