java.util.Map

JavaのMapとは、キーと値のペアを保存するKey-Value Storeである。Java Mapの基本的な機能はjava.util.Mapインタフェースで提供され、java.util.Mapインタフェースを実装したさまざまなクラスがJava APIで提供されている。

目次

  1. クラス図
  2. メソッド
  3. マップにキーと値を追加
  4. マップの要素数を取得
  5. マップから値を取得
  6. マップからキーと値を削除
  7. マップから全てのキーと値を削除
  8. ループ

クラス図

java.util.Map
図1 java.util.Map

メソッド

java.util.Map<K, V> インタフェースのメソッドを以下に示す。

Mapインタフェースのメソッド
メソッド 説明
clear マップからマッピングをすべて削除する。
get 指定したキーがマップされている値を返す。
put 指定したキーと値をマップに関連付ける。
remove 指定したキーのマッピングをマップから削除する。
size マップ内のキー値マッピングの数を返す。
values マップに含まれる値のCollectionビューを返す。
containsKey マップが指定キーマッピングを保持する場合にtrueを返す。

マップにキーと値を追加

マップにキーと値を追加する。

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

public class Example {
    public static void main(String args[]) {
        Map<String, Integer> map = new HashMap<>();
        try {
            // マップにキーと値を追加
            map.put("height", 720);
            map.put("width", 1280);
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}

マップの要素数を取得

マップの要素数を取得する。

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

public class Example {
    public static void main(String args[]) {
        Map<String, Integer> map = new HashMap<>();
        try {
            // マップにキーと値を追加
            map.put("height", 720);
            map.put("width", 1280);
            // マップから値を取得
            System.out.println(map.size());
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}

マップから値を取得

マップから値を取得する。

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

public class Example {
    public static void main(String args[]) {
        Map<String, Integer> map = new HashMap<>();
        try {
            // マップにキーと値を追加
            map.put("height", 720);
            map.put("width", 1280);
            // マップから値を取得
            System.out.println(map.get("height"));
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}

マップからキーと値を削除

マップからキーと値を削除する。

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

public class Example {
    public static void main(String args[]) {
        Map<String, Integer> map = new HashMap<>();
        try {
            // マップにキーと値を追加
            map.put("height", 720);
            map.put("width", 1280);
            // マップからキーと値を削除
            map.remove("height");
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}

マップから全てのキーと値を削除

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

public class Example {
    public static void main(String args[]) {
        Map<String, Integer> map = new HashMap<>();
        try {
            // マップにキーと値を追加
            map.put("height", 720);
            map.put("width", 1280);
            // マップから全てのキーと値を削除
            map.clear();
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}

ループ

Mapインタフェースをループ処理する例を次に示す。

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

public class Example {
    public static void main(String args[]) {
       // マップの作成
        Map<String, Integer> map = new HashMap<>();
        // マップにキーと値を追加
        map.put("foo", 1);
        map.put("bar", 2);
        map.put("baz", 3);
        // ループ処理
        for (Map.Entry<String, Integer> entry : map.entrySet()) {
            // キーの取得
            String key = entry.getKey();
            // 値の取得
            Integer value = entry.getValue();
            // キーと値を出力
            System.out.println(key + ":" + value);
        }
    }
}