Cómo Iterar sobre cada elemento del map en Java
- 
          
            Cómo Iterar Elementos del Mapen Java
- 
          
            Iterar los elementos del Mapusandoforbucle en Java
- 
          
            Iterar los elementos Mapusandoforeachen Java
- 
          
            Iterar los elementos del MapusandoEntryeIteratoren Java
- 
          
            Iterar los elementos del Mapusandofor-eachykeySet()en Java
- 
          
            Iterar los elementos del Mapusando elwhilebucle en Java
- 
          
            Iterando elementos del MapusandoStreamyforEachen Java
- 
          
            Iterar los elementos del mapa usando forEachylambdaen Java
 
Este tutorial introduce cómo iterar sobre cada elemento del mapa y enumera algunos códigos de ejemplo para entenderlo.
Cómo Iterar Elementos del Map en Java
    
Map es una interfaz que se utiliza para recoger datos en forma de par llave-valor. Java provee varias formas de iterar elementos del mapa como for bucle, for-each bucle, while bucle, método forEach(), etc. Veamos los ejemplos.
Iterar los elementos del Map usando for bucle en Java
Usamos un simple for bucle para iterar los elementos del Map. Aquí, en el bucle se usa el método iterator() para obtener entradas.
import java.util.HashMap;
import java.util.Iterator;
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");
    for (Iterator<Map.Entry<Integer, String>> entries = map.entrySet().iterator();
         entries.hasNext();) {
      Map.Entry<Integer, String> entry = entries.next();
      System.out.println(entry.getKey() + " : " + entry.getValue());
    }
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Iterar los elementos Map usando foreach en Java
Utilizamos el bucle for-each y el método entrySet() para iterar cada entrada del mapa. El entrySet() devuelve un conjunto de entradas del mapa.
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");
    for (Map.Entry<Integer, String> entry : map.entrySet()) {
      System.out.println(entry.getKey() + ":" + entry.getValue());
    }
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Iterar los elementos del Map usando Entry e Iterator en Java
El método iterator() devuelve un Iterator para atravesar los elementos mientras que Entry se usa para recoger la entrada de Map.
import java.util.HashMap;
import java.util.Iterator;
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");
    Iterator<Map.Entry<Integer, String>> entries = map.entrySet().iterator();
    while (entries.hasNext()) {
      Map.Entry<Integer, String> entry = entries.next();
      System.out.println(entry.getKey() + ":" + entry.getValue());
    }
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Iterar los elementos del Map usando for-each y keySet() en Java
El método keySet() se usa para recoger un conjunto de claves de Map que luego se usa para iterar usando un bucle for-each.
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");
    for (Integer key : map.keySet()) {
      System.out.println(key + " : " + map.get(key));
    }
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Iterar los elementos del Map usando el while bucle en Java
Aquí, usamos el método iterator() para obtener el iterador de claves y luego iterar estas claves usando el bucle while. Para obtener el valor de una clave, usamos el método get().
import java.util.HashMap;
import java.util.Iterator;
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");
    Iterator<Integer> itr = map.keySet().iterator();
    while (itr.hasNext()) {
      Integer key = itr.next();
      System.out.println(key + " : " + map.get(key));
    }
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Iterando elementos del Map usando Stream y forEach en Java
Podemos usar la corriente para iterar los elementos. Aquí, usamos entrySet() para recoger las entradas del mapa que se desplazaron a través del método 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);
  }
}
Resultado:
100=Hundred
1000=Thousand
10=Ten
Iterar los elementos del mapa usando forEach y lambda en Java
También podemos usar la expresión lambda para iterar los elementos del mapa. Aquí, usamos la expresión lambda dentro del método 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.forEach((key, value) -> System.out.println(key + " : " + value));
  }
}
Resultado:
100 : Hundred
1000 : Thousand
10 : Ten
Artículo relacionado - Java Map
- Mapa de incremento en Java
- Convertir valores de mapa en una lista en Java
- Filtrado de map en Java
- Convertir lista a map en Java
- Crear un map ordenado en Java
- Crear un map en Java