é a ordem de iteração do Java HashMap keySet () consistente?

Eu entendo que o conjunto retornado do método keySet () de um mapa não garante nenhuma ordem específica.

Minha pergunta é: ela garante omesmo ordem em várias iterações. Por exemplo

Map<K,V> map = getMap();

for( K k : map.keySet() )
{
}

...

for( K k : map.keySet() )
{
}

No código acima, assumindo que o mapa énão modificado, a iteração sobre os keySets estará na mesma ordem. Usando o jdk15 da Sunfaz iterar na mesma ordem, mas antes de depender desse comportamento, gostaria de saber se todos os JDKs farão o mesmo.

EDITAR

Eu vejo pelas respostas que não posso depender disso. Que pena. Eu estava esperando para não ter que construir uma nova coleção para garantir a minha encomenda. Meu código precisava percorrer, fazer alguma lógica e, em seguida, percorrer novamente com a mesma ordem. Vou apenas criar uma nova ArrayList do keySet que garantirá a ordem.

questionAnswers(11)

yourAnswerToTheQuestion