JavaのMapとは?キーと値の組み合わせでデータを管理する考え方

本記事は、Schooの「Java入門 初級【2026年版】」第8回「ポリモーフィズム・コレクション」を学ぶ前後に、Javaの Map と HashMap を整理したい方向けのステップアップ学習記事です。
結論からいうと、Map は「キー」と「値」をセットで管理するための仕組みです。たとえば、Alice という名前から 80 点を取り出すように、何かを手がかりにして値を取得したいときに使います。
Schoo コースページ:Java入門 初級【2026年版】
Mapはキーと値をセットで持つ
List は、複数のデータを順番に並べて扱うときに便利です。一方で、Map は「名前から点数を取り出す」「商品コードから商品名を取り出す」のように、キーを指定して値を取り出したいときに使います。
Mapでは、左側の Alice や Bob のような取り出すための目印を「キー」、右側の 80 や 65 のような実際のデータを「値」と考えます。
HashMapを作成する
文字列の名前をキーにして、整数の点数を管理する場合は、次のように書けます。
import java.util.HashMap;
import java.util.Map;
Map<String, Integer> scores = new HashMap<>();
Map<String, Integer> は「キーは文字列、値は整数のMap」という意味です。new HashMap<>() で、実際に使うMapの本体を作っています。
ここでも、左側が Map なのに右側が HashMap になっています。Map は「キーと値の組み合わせとして使えるもの」という大きなくくりで、HashMap はその具体的な作り方の1つです。
putでデータを登録する
Mapにデータを登録するときは、put() を使います。
scores.put("Alice", 80);
scores.put("Bob", 65);
scores.put("Carol", 90);
このコードでは、Alice というキーに 80、Bob というキーに 65、Carol というキーに 90 を結びつけています。
“Alice”, 80);
“Alice”);
getで値を取り出す
登録した値を取り出すときは、get() にキーを渡します。
System.out.println("Aliceの点数:" + scores.get("Alice"));
scores.get("Alice") は、Alice というキーに対応する値を取り出します。上の例では 80 が取り出されます。
removeでデータを削除する
Mapからデータを削除するときは、remove() にキーを渡します。
scores.remove("Bob");
このコードを実行すると、Bob というキーと、それに対応する 65 という値がまとめて削除されます。
keySetでMap全体を表示する
Mapの中身をすべて表示したいときは、まず keySet() でキーの一覧を取り出します。そのキーを1つずつ見ながら、get() で値を取り出します。
for (String name : scores.keySet()) {
System.out.println(name + ":" + scores.get(name));
}
name には、Alice、Bob、Carol のようなキーが1つずつ入ります。そして scores.get(name) で、そのキーに対応する点数を取り出しています。
: scores.keySet())
name に Alice、Bob、Carol が順番に入るMapを使うときの注意点
Mapでは、同じキーに対してもう一度 put() すると、古い値が新しい値で上書きされます。
scores.put("Alice", 80);
scores.put("Alice", 95);
この場合、Alice に対応する値は 95 になります。Mapは「1つのキーに1つの値を対応させる」仕組みだと考えると理解しやすくなります。
確認問題
Mapは、どのようなデータを扱うときに便利ですか。scores.put("Alice", 80);は、何を登録している処理ですか。scores.get("Alice")を実行すると、何が取り出されますか。
演習後の確認:こちらのページを使って、自分で考えた内容を見直せます。
あわせて読みたい関連記事
- JavaのListとは?ArrayListで複数のデータを追加・削除する考え方
- Javaのポリモーフィズムはなぜ使う?同じ呼び出しで処理を切り替える考え方
- Javaの参照型とは?変数にオブジェクトそのものではなく場所の情報が入る考え方
まとめ
Map は、キーと値をセットで管理するための仕組みです。put() で登録し、get() で取り出し、remove() で削除できます。順番に並べる List と、キーで取り出す Map の違いを押さえると、コレクションの使い分けが理解しやすくなります。