How to implement foreach in Groovy? I have an example of code in Java, but I don't know how to implement this code in Groovy...
Java:
for (Object objKey : tmpHM.keySet()) { HashMap objHM = (HashMap) list.get(objKey); } I read , and tried to translate my Java code to Groovy, but it's not working.
for (objKey in tmpHM.keySet()) { HashMap objHM = (HashMap) list.get(objKey); } 24 Answers
as simple as:
tmpHM.each{ key, value -> doSomethingWithKeyAndValue key, value } 7This one worked for me:
def list = [1,2,3,4] for(item in list){ println item } Source: Wikia.
You can use the below groovy code for maps with for-each loop.
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 } Your code works fine.
def list = [["c":"d"], ["e":"f"], ["g":"h"]] Map tmpHM = [1:"second (e:f)", 0:"first (c:d)", 2:"third (g:h)"] for (objKey in tmpHM.keySet()) { HashMap objHM = (HashMap) list.get(objKey); print("objHM: ${objHM} , ") } prints objHM: [e:f] , objHM: [c:d] , objHM: [g:h] ,
Then click "edit in console", "execute script"