Java で HashMap を繰り返し処理する方法
Mohammad Irfan
2023年10月12日
Java
Java HashMap
-
Java の
entrySet()メソッドを用いたHashMapの繰り返し処理 -
Java の
foreachを用いたHashMapの繰り返し処理 -
Java の
keySet()メソッドを用いたHashMapの繰り返し処理 -
Java の
forEach()メソッドを用いたHashMapの繰り返し処理 -
Java の
streamとforEach()メソッドを用いたHashMapの繰り返し処理
このチュートリアルでは、Java で HashMap を繰り返し処理する方法と、それを理解するためのコード例を紹介します。
HashMap を繰り返し処理する方法はいくつかありますが、ここでは keySet()、entrySet()、forEach() メソッドなどを利用します。それでは、例を見てみましょう。
Java の entrySet() メソッドを用いた HashMap の繰り返し処理
マップに含まれるマッピングのセットビューを取得するには、entrySet() メソッドを用います。セットされたビューをイテレータに集め、while ループを使って繰り返し処理を行う。以下の例を参照してください。
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
Map<Integer, Integer> map = new HashMap<>();
map.put(2, 1020);
map.put(3, 300);
map.put(1, 100);
map.put(5, 500);
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<Integer, Integer> entry = (Map.Entry) it.next();
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}
}
出力:
1 = 10
2 = 1020
3 = 300
5 = 500
Java の foreach を用いた HashMap の繰り返し処理
これもまた、HasMap を繰り返し処理するための解決策です。ここでは、HashMap の要素を繰り返し処理するために for-each ループを使用します。以下の例を参照してください。
import java.util.HashMap;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
Map<Integer, Integer> map = new HashMap<>();
map.put(2, 1020);
map.put(3, 300);
map.put(1, 100);
map.put(5, 500);
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}
}
出力:
1 = 10
2 = 1020
3 = 300
5 = 500
Java の keySet() メソッドを用いた HashMap の繰り返し処理
keySet() メソッドは、すべてのキーを収集してセットを作成し、それを用いて HashMap の要素を繰り返し処理することができます。以下の例を参照してください。
import java.util.HashMap;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
Map<Integer, Integer> map = new HashMap<>();
map.put(2, 1020);
map.put(3, 300);
map.put(1, 100);
map.put(5, 500);
for (Integer key : map.keySet()) {
System.out.println(key + " = " + map.get(key));
}
}
}
出力:
1 = 10
2 = 1020
3 = 300
5 = 500
Java の forEach() メソッドを用いた HashMap の繰り返し処理
HashMap の要素を繰り返し処理するには、forEach() メソッドを用いることができます。forEach() メソッドは Java 8 で導入された新しいメソッドで、Iteratable と Stream インターフェースで利用できます。以下の例を参照してください。
import java.util.HashMap;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
Map<Integer, Integer> map = new HashMap<>();
map.put(2, 1020);
map.put(3, 300);
map.put(1, 100);
map.put(5, 500);
map.forEach((key, value) -> { System.out.println(key + " = " + value); });
}
}
出力:
1 = 10
2 = 1020
3 = 300
5 = 500
Java の stream と forEach() メソッドを用いた HashMap の繰り返し処理
ストリームを用いて要素の繰り返し処理を行うことができます。ここでは、entrySet() を用いて、ストリームの forEach() メソッドを通過するマップ要素を収集します。
import java.util.HashMap;
import java.util.Map;
public class SimpleTesting {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<>();
map.put(10, "Ten");
map.put(100, "Hundred");
map.put(1000, "Thousand");
map.entrySet().stream().forEach(System.out::println);
}
}
出力:
1 = 10
2 = 1020
3 = 300
5 = 500
チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe