102 「Map修羅道」 Step04 問題

「出現回数をカウントせよ」

あなたは、注文された商品の名前が並んだリストを受け取りました。
このリストから、各商品が何回注文されたかをカウントして表示してください。

対象のリストは以下とします:

List<String> orders = Arrays.asList(
    "apple", "banana", "apple", "orange", "banana", "apple"
);

期待される出力例:

apple → 3
banana → 2
orange → 1

要件

  • Map<String, Integer> を使って、商品ごとの注文数をカウントすること
  • すでにカウントがある場合は +1、なければ初期値1をセットすること
  • for 文でループして処理すること(Stream APIは使用禁止)

テストコード(Main.java)

public class Main {
    public static void main(String[] args) {
        MapUtil.countOrders();
    }
}

ヒント

  • map.containsKey(key) でキーの存在を確認できる
  • よりスマートに書きたい場合は map.getOrDefault(key, 0) を使う

解答例

102 ステップアップ問題 「Map修羅道」