1つのキーに複数の値を格納するには?
ある商品カテゴリと、それに属する商品名の対応を管理したい。
次のようなカテゴリと商品をMapに登録し、出力してください:
- “Food” → “Apple”, “Banana”
- “Clothing” → “T-shirt”, “Jeans”
- “Food” → “Orange”
ただし、Mapの値として List<String>
を使用し、カテゴリごとに複数の商品を登録できるようにしてください。
要件
Map<String, List<String>>
を使用すること- 同じキーに複数回商品を追加できるようにすること
for
文を使ってすべてのカテゴリと商品を出力すること
出力例(順不同):
Food:
Apple
Banana
Orange
Clothing:
T-shirt
Jeans
テストコード(Main.java)
public class Main {
public static void main(String[] args) {
MapUtil.printCategoryMap();
}
}
ヒント
- 値が
List
のとき、要素追加はmap.get(key).add(...)
で行う - ただし、
put()
前にそのキーの存在を確認し、new ArrayList<>()
を用意する必要がある
→解答例