Различные способы перебора карты в Java

Цикл по карте в Java. В этом посте мы рассмотрим четыре различных способа перебора карты в Java. Начиная с Java 8, мы можем использовать метод forEach, а также класс итератора для цикла по карте.



Как перебирать записи на карте (ключи и значения)

Map map = new HashMap(); for (Map.Entry entry : map.entrySet()) {
System.out.println('Key = ' + entry.getKey() + ', Value = ' + entry.getValue()); }


Как перебирать только ключи карты

Map map = new HashMap(); for (Integer key : map.keySet()) {
System.out.println('Key = ' + key); }


Как перебирать только значения карты

for (Integer value : map.values()) {
System.out.println('Value = ' + value); }

Связанный:



Использование итератора

Использование дженериков:


Map map = new HashMap(); Iterator entries = map.entrySet().iterator(); while (entries.hasNext()) {
Map.Entry entry = entries.next();
System.out.println('Key = ' + entry.getKey() + ', Value = ' + entry.getValue()); }

Без дженериков:

Map map = new HashMap(); Iterator entries = map.entrySet().iterator(); while (entries.hasNext()) {
Map.Entry entry = (Map.Entry) entries.next();
Integer key = (Integer)entry.getKey();
Integer value = (Integer)entry.getValue();
System.out.println('Key = ' + key + ', Value = ' + value); }


Перебор ключей и поиск значений

Map map = new HashMap(); for (Integer key : map.keySet()) {
Integer value = map.get(key);
System.out.println('Key = ' + key + ', Value = ' + value); }


Использование Java 8 ForEach

Map items = new HashMap();
items.put('key 1', 1);
items.put('key 2', 2);
items.put('key 3', 3);
items.forEach((k,v)->System.out.println('Item : ' + k + ' Count : ' + v));