カテゴリ: Java 更新日: 2026/01/27

JavaのHashMapのputとgetの違いを徹底解説!初心者でもわかるデータ登録と取得

HashMap のput と get の比較
HashMap のput と get の比較

先生と生徒の会話形式で理解しよう

生徒

「Javaでデータを保存したり取り出したりするときに、HashMapのputとgetってよく見るんですけど、どう違うんですか?」

先生

「とても大事なポイントですね。HashMapでは、putでデータを登録して、getでデータを取り出します。使い方を順番に理解すると、データ管理がぐっと楽になりますよ。」

生徒

「それぞれの動作が具体的にどう違うのか知りたいです!」

先生

「では、サンプルコードを見ながら基本を押さえていきましょう!」

1. HashMapとは何かを簡単におさらい

1. HashMapとは何かを簡単におさらい
1. HashMapとは何かを簡単におさらい

HashMapはJavaでよく使われるコレクションクラスで、データをキーと値の組み合わせで保存する仕組みです。配列やArrayListと異なり、数字のインデックスではなく任意のキーを使ってデータへアクセスできます。そのため名前と年齢、商品コードと価格など関連した情報を管理するのに向いています。

特にJavaのWeb開発、API作成、データ管理、設定情報の保持などでも頻繁に使われるため、初心者のうちに基本を理解しておくと学習がスムーズになります。

2. putはデータを保存するメソッド

2. putはデータを保存するメソッド
2. putはデータを保存するメソッド

HashMapにデータを登録するときに使うのがputです。キーを指定して値を保存することで、後から取り出せる状態を作ります。キーが既に存在する場合は上書きされる点に注意が必要です。


import java.util.HashMap;

public class PutExample {
    public static void main(String[] args) {
        HashMap<String, Integer> ages = new HashMap<>();

        // putでデータを登録
        ages.put("Taro", 20);
        ages.put("Hanako", 25);

        // 同じキーに再登録すると上書き
        ages.put("Taro", 30);

        System.out.println(ages);
    }
}

{Taro=30, Hanako=25}

このサンプルでは「Taro」を2回登録していますが、最後に保存した30が有効な値として保持されます。キーは重複できず、後から追加された値で更新される仕組みです。

3. getは保存した値を取り出すメソッド

3. getは保存した値を取り出すメソッド
3. getは保存した値を取り出すメソッド

保存されたデータをキーを使って読み出すときにgetを使います。存在しないキーを指定するとnullが返ってくるため、処理前に確認するコードを書くのが一般的です。


import java.util.HashMap;

public class GetExample {
    public static void main(String[] args) {
        HashMap<String, Integer> ages = new HashMap<>();

        ages.put("Sato", 18);
        ages.put("Yamada", 22);

        Integer value = ages.get("Sato");
        Integer notFound = ages.get("Unknown");

        System.out.println("Sato: " + value);
        System.out.println("Unknown: " + notFound);
    }
}

Sato: 18
Unknown: null

ここで重要なのは、存在しないデータはnullになるという点です。そのため条件分岐を使ってnullチェックを行うと安全に処理できます。

4. putとgetの動きの違いを図で理解

4. putとgetの動きの違いを図で理解
4. putとgetの動きの違いを図で理解

HashMapの動きを視覚的に整理すると、putは保存の矢印、getは読み取りの矢印になります。


<div>
    <p>put → 「キー」→「値」を登録</p>
    <p>get → 「キー」→「値」を取得</p>
</div>

「保存するメソッド」と「取り出すメソッド」が明確に分かれていることで、Javaプログラムにおけるデータ管理が直感的になります。

5. putとgetを組み合わせる実践例

5. putとgetを組み合わせる実践例
5. putとgetを組み合わせる実践例

実際のアプリケーションでは、データを登録してから必要なタイミングで取り出す流れで使われます。以下は学生のテスト結果を保存して検索するサンプルです。


import java.util.HashMap;

public class PracticeExample {
    public static void main(String[] args) {
        HashMap<String, Integer> scores = new HashMap<>();

        // 登録
        scores.put("Ken", 85);
        scores.put("Mika", 92);
        scores.put("Rika", 74);

        // 取得
        System.out.println("Kenの点数: " + scores.get("Ken"));
    }
}

Kenの点数: 85

こうした流れは、会員管理、商品管理、設定情報の保持など多くのプログラムで応用されます。

6. putとgetを使うときに注意するポイント

6. putとgetを使うときに注意するポイント
6. putとgetを使うときに注意するポイント

HashMapは便利ですが、実装時には気を付けるべき点があります。特に初心者がつまずきやすいのは以下のポイントです。

  • 存在しないキーをgetするとnullになる
  • 同じキーをputすると上書きされる
  • キーに意味のある値を設定しないと管理が難しくなる

また、データ数が増える場合、キーをランダムな数字にするよりユーザーIDのような重複しにくい識別子を使う方が効率的です。

まとめ

まとめ
まとめ

Javaでプログラミングを学び始めると、データをどのように保存し、必要になったときにどのように取り出すのかという点がとても重要になります。特にHashMapは、キーと値を組み合わせて管理できる便利なコレクションクラスであり、配列やArrayListでは扱いづらい「関連する情報を素早く検索したい場面」で役立ちます。今回の記事ではputとgetの違いに注目しながら、保存と取得のしくみを丁寧に整理しました。putは「登録」、getは「取り出し」という役割を持ち、二つの動きがセットになることでデータ管理が完成します。また、実際にプログラムを動かすことでキーが重複した際に値が上書きされることや、存在しないキーを指定するとnullが返ることも確認できました。これらは初心者がつまずきやすいポイントであり、事前に理解しておくことで実装がよりスムーズになります。

さらにHashMapはJavaの学習だけでなく、Webアプリケーション開発、API実装、データベース連携、設定情報の保持など幅広い場面で利用されます。そのため今のうちにputとgetの利用方法をしっかり理解し、実践の中で自然に使えるようにしておくと、後から複雑なプログラムを作る際にも役立ちます。キーをどのように設計するかによってデータの効率が大きく変わるため、意味のある値を設定することや、重複しない値を選ぶという点も重要です。単なるサンプルコードとして終わらせるのではなく、自分が作るアプリケーションに合った使い方を考えることで、HashMapの便利さをより深く実感できるはずです。

ここまでの内容を踏まえ、最後に簡単な総まとめとなるサンプルコードをもう一度確認してみましょう。登録と取得がひとつの流れの中でどのように動くか、実際の動作に注目してみてください。


import java.util.HashMap;

public class SummaryExample {
    public static void main(String[] args) {
        HashMap<String, Integer> points = new HashMap<>();

        // putで登録
        points.put("Apple", 120);
        points.put("Orange", 150);
        points.put("Grape", 90);

        // getで取得
        System.out.println("Orangeの価格: " + points.get("Orange"));

        // 登録されていないキー
        System.out.println("Bananaの価格: " + points.get("Banana"));
    }
}

Orangeの価格: 150
Bananaの価格: null

このサンプルではputを使って果物と価格を保存し、getを使って必要な値を取り出しています。存在しないキーを指定するとnullになる点や、キーが検索の軸になっていることを理解すると、HashMapを扱う際の視点が大きく変わります。配列やリストでは位置を覚えておく必要がありますが、HashMapでは名前や識別子など意味を持つキーが使えるため、データ構造の設計がより柔軟になります。

先生と生徒の振り返り会話

生徒

「HashMapを使うときは、putで保存してgetで取り出すという流れが基本なんですね。」

先生

「その通りです。まず保存があって初めて取り出しができるので、この二つをセットで覚えることが大切です。」

生徒

「同じキーでputすると値が上書きされるという仕組みも理解できました。データを扱うときはキーの設計を意識する必要がありそうですね。」

先生

「そうですね。アプリケーションによってはIDやコードをキーにすることで管理しやすくなりますし、nullが返るケースにも注意して条件分岐を書けるようになるとさらに実践的です。」

生徒

「今まではなんとなく使っていましたが、今回学んだことでデータの流れがイメージできるようになりました。実際にアプリケーションで試してみます!」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

JavaのHashMapとは何ですか?ArrayListとの違いは何ですか?

HashMapはJavaでよく使われるデータ構造で、キーと値の組み合わせでデータを保存するコレクションです。ArrayListのようにインデックス番号ではなく、任意のキーを使って値を管理できるのが特徴です。名前やIDなどのキーで値にアクセスしたい場合に便利です。
カテゴリの一覧へ
新着記事
New1
Java
JavaのStringクラスとlengthメソッドを完全解説!初心者でも理解できる文字列の長さ取得の使い方
更新記事
New2
Spring
Springの@Securedアノテーションの使い方を完全ガイド!初心者でもわかるセキュリティ設定
更新記事
New3
Java
JavaのStringクラスとlastIndexOfメソッドを完全解説!初心者でも理解できる文字列検索の使い方
更新記事
New4
Java
JavaのInterruptedExceptionを完全ガイド!初心者でも理解できるスレッド制御と例外処理
更新記事
人気記事
No.1
Java&Spring記事人気No1
Spring
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.2
Java&Spring記事人気No2
Spring
SpringのBindingResultを完全ガイド!初心者でもわかる入力チェックとエラー処理
No.3
Java&Spring記事人気No3
Java
JavaのBooleanクラスの使い方を完全ガイド!初心者でもわかる真偽値の操作
No.4
Java&Spring記事人気No4
Java
JavaのIOExceptionクラス徹底解説!初心者向けファイル入出力エラー対策ガイド
No.5
Java&Spring記事人気No5
JSP
JSPの基本タグ一覧と使い方まとめ!実務で使えるタグを紹介
No.6
Java&Spring記事人気No6
JSP
JSPでif文・for文を使う方法!初心者でもわかるJavaとの違いと使い方
No.7
Java&Spring記事人気No7
Java
JavaのInterruptedExceptionを完全ガイド!初心者でも理解できるスレッド制御と例外処理
No.8
Java&Spring記事人気No8
Java
JavaのRuntimeExceptionを完全解説!初心者でもわかるjava.langパッケージの基礎