HOWTO · Java

Como Iterar Através do HashMap em Java

Este artigo introduz como iterar através do HashMap em Java.

Este tutorial introduz como iterar através do HashMap em Java e lista alguns exemplos de códigos para entendê-lo.

Há várias maneiras de iterar o HashMap, aqui utilizamos keySet(), entrySet(), e forEach() method, etc. Vamos ver os exemplos.

Iterate Through HashMap Utilizando entrySet() Método em Java

O método entrySet() é utilizado para obter uma visão definida dos mapeamentos contidos no mapa. Coletamos a visão definida no iterador e iteramos utilizando o laço while. Veja o exemplo abaixo.

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());
    }
  }
}

Resultado:

1 = 10
2 = 1020
3 = 300
5 = 500

Iterar por meio de HashMap usando foreach em Java

Esta é outra solução para iterar o HasMap. Aqui, utilizamos um laço for-each para iterar os elementos do HashMap. Veja o exemplo abaixo.

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());
    }
  }
}

Resultado:

1 = 10
2 = 1020
3 = 300
5 = 500

Iterar por meio de HashMap usando o método keySet() em Java

O método keySet() é utilizado para coletar todas as chaves e criar um array que poderia ser utilizado para iterar ainda mais o elemento HashMap. Veja o exemplo abaixo.

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));
    }
  }
}

Resultado:

1 = 10
2 = 1020
3 = 300
5 = 500

Iterar por meio de HashMap usando o método forEach() em Java

Podemos utilizar o método forEach() para iterar os elementos do HashMap. O método forEach() é um novo método introduzido no Java 8 e disponível nas interfaces Iteratable e Stream. Veja o exemplo abaixo.

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); });
  }
}

Resultado:

1 = 10
2 = 1020
3 = 300
5 = 500

Iterar por meio de HashMap usando o método stream e forEach() em Java

Podemos usar o fluxo para iterar os elementos. Aqui, utilizamos entrySet() para coletar elementos do mapa que atravessam mais adiante através do método forEach() do córrego.

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);
  }
}

Resultado:

1 = 10
2 = 1020
3 = 300
5 = 500