カテゴリ: Javaのマップ 更新日: 2026/03/16

JavaのHashMapの使い方を完全解説!初心者でもわかる作成・追加・取得の基本

2023
Java の HashMap を作成してデータを追加・取得する方法

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

生徒

「Javaでデータをまとめて管理したいのですが、配列以外に便利な方法はありますか?」

先生

「あります。JavaではHashMapを使うことで、キーと値をセットにして効率よくデータ管理ができます。」

生徒

「キーと値って何ですか?」

先生

「例えば、名前をキーにして点数を値として保存するような仕組みです。JavaのHashMapはデータ検索が高速なので、とてもよく使われます。」

生徒

「作り方やデータの追加方法を知りたいです。」

先生

「それでは、JavaのHashMapの作成方法から順番に解説していきましょう。」

1. HashMapとは何か

1. HashMapとは何か
1. HashMapとは何か

JavaのHashMapとは、キーと値を組み合わせてデータを管理するためのクラスです。Javaのコレクションフレームワークの一つであり、データ構造として非常に重要な役割を持っています。

配列は番号で管理しますが、HashMapは文字列や数値などをキーとして管理できます。例えば社員番号から社員名を取得する、商品コードから価格を取得する、といった処理に最適です。

Java初心者がつまずきやすいポイントは、キーは重複できないという点です。同じキーを追加すると、値は上書きされます。この特徴を理解することが重要です。

2. JavaでHashMapを作成する方法

2. JavaでHashMapを作成する方法
2. JavaでHashMapを作成する方法

JavaでHashMapを使うには、まずimport文で読み込みます。その後、ジェネリクスを使って型を指定します。キーと値の型を明確にすることで、安全にデータを扱えます。


import java.util.HashMap;

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

        System.out.println("HashMapを作成しました");
    }
}

上記の例では、キーがString型、値がInteger型のHashMapを作成しています。JavaのHashMapの基本構文として必ず覚えておきましょう。

3. HashMapにデータを追加する方法

3. HashMapにデータを追加する方法
3. HashMapにデータを追加する方法

JavaのHashMapにデータを追加するには、putメソッドを使用します。キーと値をセットで指定します。


import java.util.HashMap;

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

        scoreMap.put("田中", 80);
        scoreMap.put("佐藤", 90);
        scoreMap.put("鈴木", 75);

        System.out.println(scoreMap);
    }
}

{田中=80, 佐藤=90, 鈴木=75}

JavaのHashMapは順番を保証しません。そのため、表示順は毎回同じとは限りません。順番を保持したい場合はLinkedHashMapを検討します。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. HashMapからデータを取得する方法

4. HashMapからデータを取得する方法
4. HashMapからデータを取得する方法

追加したデータを取得するにはgetメソッドを使います。キーを指定すると対応する値を取得できます。


import java.util.HashMap;

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

        scoreMap.put("田中", 80);
        scoreMap.put("佐藤", 90);

        int score = scoreMap.get("佐藤");
        System.out.println("佐藤の点数: " + score);
    }
}

佐藤の点数: 90

存在しないキーを指定するとnullが返ります。そのため、containsKeyメソッドと組み合わせると安全です。

5. containsKeyで安全に確認する方法

5. containsKeyで安全に確認する方法
5. containsKeyで安全に確認する方法

JavaのHashMapでは、データ取得前にキーの存在確認をすることが推奨されます。containsKeyを使うことで、例外を防げます。


import java.util.HashMap;

public class HashMapContainsExample {
    public static void main(String[] args) {
        HashMap<String, Integer> scoreMap = new HashMap<>();
        scoreMap.put("山本", 88);

        if (scoreMap.containsKey("山本")) {
            System.out.println("山本の点数: " + scoreMap.get("山本"));
        } else {
            System.out.println("データが存在しません");
        }
    }
}

山本の点数: 88

Java初心者は、null処理を忘れがちです。HashMapを扱う際は、必ず存在確認を意識しましょう。

6. HashMapの全データを繰り返し処理する方法

6. HashMapの全データを繰り返し処理する方法
6. HashMapの全データを繰り返し処理する方法

JavaのHashMapの中身をすべて表示したい場合は、for文とentrySetを使います。これによりキーと値を同時に取得できます。


import java.util.HashMap;
import java.util.Map;

public class HashMapLoopExample {
    public static void main(String[] args) {
        HashMap<String, Integer> scoreMap = new HashMap<>();
        scoreMap.put("高橋", 70);
        scoreMap.put("伊藤", 95);

        for (Map.Entry<String, Integer> entry : scoreMap.entrySet()) {
            System.out.println("名前: " + entry.getKey() + 
                               " 点数: " + entry.getValue());
        }
    }
}

名前: 高橋 点数: 70
名前: 伊藤 点数: 95

JavaのHashMapは業務システム開発でも頻繁に使用されます。データベースから取得した情報を一時保存する用途にも便利です。

7. HashMapを使うメリットと活用例

7. HashMapを使うメリットと活用例
7. HashMapを使うメリットと活用例

JavaのHashMapは検索速度が高速であり、大量データの管理に適しています。キーから即座に値を取得できるため、パフォーマンスが求められるシステムで重宝されます。

例えばログインシステムでは、ユーザーIDをキーにしてパスワード情報を保持できます。また、商品管理システムでは商品コードをキーに価格を保持できます。

Javaのコレクションの中でもHashMapは特に使用頻度が高いクラスです。Java SilverやJava Goldなどの資格試験でも頻出ですので、確実に理解しておきましょう。

HashMapの作成、putによる追加、getによる取得、containsKeyによる確認、entrySetによる繰り返し処理。この基本操作を身につけることで、Javaプログラミングの幅は大きく広がります。

まとめ

まとめ
まとめ

今回はJavaのHashMapの使い方について、作成方法からデータの追加、取得、存在確認、そして繰り返し処理までを段階的に学習しました。HashMapはキーと値を組み合わせて管理できる非常に便利なデータ構造であり、Javaプログラミングにおいて基礎かつ重要な存在です。配列とは異なり、数値の添字ではなく文字列や任意のオブジェクトをキーとして扱える点が大きな特徴です。

JavaのHashMapではキーの重複が許可されないという重要な仕様があります。同じキーを指定してputメソッドを実行すると、以前の値は上書きされます。この挙動を理解していないと、意図しないデータ消失につながるため注意が必要です。業務システム開発やサーバーサイド開発、バッチ処理、データ変換処理など、さまざまな場面でHashMapは活躍します。

また、getメソッドで値を取得する際に存在しないキーを指定するとnullが返るという点も重要です。NullPointerExceptionを防ぐためにもcontainsKeyメソッドを活用する習慣を身につけましょう。安全なJavaコードを書くためには、例外を想定した実装が不可欠です。

HashMapの繰り返し処理ではentrySetを利用することでキーと値を同時に取り出すことができます。拡張for文と組み合わせることで、可読性の高いコードを書くことが可能です。Java初心者の方はまずこの基本形をしっかり理解することが上達への近道です。

さらに、HashMapは検索速度が高速であるというメリットがあります。内部ではハッシュ値を利用してデータを管理しているため、大量データを扱う場面でも高いパフォーマンスを発揮します。ログイン認証機能、商品管理システム、成績管理システム、設定情報の一時保存など、多くの実務で利用されています。

Javaのコレクションフレームワークを理解することは、オブジェクト指向プログラミングの理解を深めることにもつながります。HashMapの基本操作である作成、put、get、containsKey、entrySetの流れを確実に身につけることで、より複雑なデータ処理にも対応できるようになります。

総合サンプルプログラム


import java.util.HashMap;
import java.util.Map;

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

        scoreMap.put("田中", 85);
        scoreMap.put("佐藤", 92);
        scoreMap.put("鈴木", 78);

        if (scoreMap.containsKey("佐藤")) {
            System.out.println("佐藤の点数は " + scoreMap.get("佐藤") + " 点です");
        }

        System.out.println("一覧表示開始");

        for (Map.Entry<String, Integer> entry : scoreMap.entrySet()) {
            System.out.println("名前: " + entry.getKey() +
                               " 点数: " + entry.getValue());
        }
    }
}

佐藤の点数は 92 点です
一覧表示開始
名前: 田中 点数: 85
名前: 佐藤 点数: 92
名前: 鈴木 点数: 78

このようにJavaのHashMapを使えば、データの登録、検索、確認、一覧表示までを簡潔に実装できます。Java入門者の方は、まずは小さなサンプルプログラムを何度も実行し、HashMapの動作を体感することが大切です。実際に手を動かしてコードを書くことで理解が深まります。

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

生徒

JavaのHashMapはキーと値をセットで管理できる便利なクラスだということがわかりました。配列とは違い、名前や文字列をキーにできるのがとても使いやすいですね。

先生

その通りです。JavaのHashMapはデータ検索が高速なので、実務でも頻繁に使われます。キーが重複できないという仕様も理解できましたか。

生徒

はい。同じキーでputすると値が上書きされるので注意が必要ですね。containsKeyで存在確認してからgetを使うことも重要だと理解しました。

先生

とても良い理解です。さらにentrySetを使えば、HashMapの全データを安全に繰り返し処理できます。これができれば、Javaプログラミングの基礎はかなり身についています。

生徒

これからはJavaのコレクションフレームワークを意識しながら、HashMapを活用してプログラムを書いてみます。

先生

素晴らしい姿勢です。HashMapの基本操作を確実に習得すれば、業務システム開発や資格試験対策にも必ず役立ちます。繰り返し練習して理解を深めていきましょう。

関連記事

Javaのマップの一覧へ
新着記事
Java の HashMap を作成してデータを追加・取得する方法
JavaのHashMapの使い方を完全解説!初心者でもわかる作成・追加・取得の基本
【AWS】S3のエラーコード一覧と原因・対処法【403・404・503など】
【AWS】S3のエラーコード一覧と原因・対処法【403・404・503などを徹底解説】
Java のマップとは?リストと何が違うのかを理解しよう
JavaのMapとは何かを完全解説!Listとの違いと使い方を初心者向けにやさしく理解
Dartのクラス・オブジェクト指向の基本まとめ
FlutterとDart入門!Dartのクラス・オブジェクト指向の基本まとめ【初心者向け完全ガイド】
人気記事
インスタンスタイプの料金比較と最適な選び方(最新2025年版)
AWSのインスタンスタイプの料金比較と最適な選び方【2025年最新版】
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク