Boa noite Gustavo, tudo bem?
Seria interessante colocar seu codigo completo para analsiarmos melhor porem voi deixar abaixo algumas opções de iterar sobre mapas.
Map<Integer, String> nomes = new HashMap<>();
nomes.put(1, "Fernando");
nomes.put(2, "Bolacha");
nomes.put(3, "Minhoca");
nomes.put(4, "Gabriel");
nomes.put(5, "Caminhao");
// Percorrendo mapa com "foreach" (chaves)
for (Integer key : nomes.keySet()) {
System.out.println("Chave: " + key);
}
// Percorrendo mapa com "foreach" (valores)
for (String value : nomes.values()) {
System.out.println("Valor: " + value);
}
// Percorrendo mapa com "foreach" (chave-valor)
for (Map.Entry<Integer, String> entry : nomes.entrySet()) {
System.out.println("Chave: " + entry.getKey() + ", Valor: " + entry.getValue());
}
// Percorrendo mapa com "foreach" (expressão lambda, chaves)
nomes.keySet().forEach(key -> System.out.println("Chave: " + key));
// Percorrendo mapa com "foreach" (expressão lambda, valores)
nomes.values().forEach(value -> System.out.println("Valor: " + value));
// Percorrendo mapa com "foreach" (expressão lambda, chave-valor)
nomes.forEach((key, value) -> System.out.println("Chave: " + key + ", Valor: " + value));
Deixei opções com "enhanced for" e com "expressoes lambda", iterando pelas chaves, valores e pelas <chaves, valores>.
Abraço!