для каждого цикла в groovy

Как реализовать для каждого в Groovy. У меня есть пример кода на Java, но я не знаю, как реализовать этот код в Groovy

Ява:

for (Object objKey : tmpHM.keySet()) {
   HashMap objHM = (HashMap) list.get(objKey);
}

Я читал http://groovy.codehaus.org/Looping и пытался перевести код Java на Groovy, но он не работает.

for (objKey in tmpHM.keySet()) {
   HashMap objHM = (HashMap) list.get(objKey);
}

Ответы

Ответ 1

так просто как:

tmpHM.each{ key, value -> 
  doSomethingWithKeyAndValue()
}

Ответ 2

Это работало для меня:

def list = [1,2,3,4]
for(item in list){
    println item
}

Источник: Wikia.

Ответ 3

вы можете использовать ниже groovy код для карт с foreachloop

def map=[key1:'value1',key2:'value2']

for(item in map)
{
log.info item.value // this will print value1 value2
log.info item // this will print key1=value1 key2=value2
}