Siempre me pasa, que cuando paso mucho tiempo sin recorrer un HashMap , tengo que recurrir a Google para ver una manera más o menos eficiente de hacerlo. Esto es debido a que el foreach, no lo tengo muy instaurado en mi manera de programar, y mira que me gusta, pero no hay manera de que se me quede.
Así que os propongo una manera de recorrer un HashMap de la forma más eficiente que he encontrado, que es separando qué quieres obtener, sólo las claves, sólo los valores, o ambos.