JavaのMapとは、キーと値のペアを保存するKey-Value Storeである。Java Mapの基本的な機能はjava.util.Mapインタフェースで提供され、java.util.Mapインタフェースを実装したさまざまなクラスがJava APIで提供されている。
java.util.Map<K, V>
インタフェースのメソッドを以下に示す。
メソッド | 説明 |
---|---|
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);
}
}
}