Javaのマップをforeachで走査する方法


まず、以下に簡単な例を示します。

Map<String, Integer> map = new HashMap<>();
map.put("キー1", 1);
map.put("キー2", 2);
map.put("キー3", 3);
// マップをforeachループで走査する
for (Map.Entry<String, Integer> entry : map.entrySet()) {
    String key = entry.getKey();
    Integer value = entry.getValue();
    System.out.println("キー: " + key + ", 値: " + value);
}

上記のコードでは、entrySet()メソッドを使用してマップのエントリセットを取得し、そのエントリをforeachループで処理しています。各エントリはMap.Entryインターフェースを介してアクセスできます。getKey()メソッドでキーを取得し、getValue()メソッドで値を取得しています。

さらに、Java 8以降では、ラムダ式を使用してより簡潔にマップを走査することもできます。

map.forEach((key, value) -> System.out.println("キー: " + key + ", 値: " + value));

上記のコードでは、forEach()メソッドを使用してマップの各エントリに対して指定されたアクションを実行しています。ラムダ式を使用することで、よりコンパクトな記述が可能です。

これらの方法を使用することで、Javaのマップをforeachループで効果的に走査することができます。必要に応じて、取得したキーと値を使用して特定の処理を実行することもできます。