For Each Loop in Groovy

For Each Loop in Groovy

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);
}
2

4 Answers

as simple as:

tmpHM.each{ key, value -> 
  doSomethingWithKeyAndValue key, value
}
7

This 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] ,

See

Then click "edit in console", "execute script"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Chloe Bennett
Author

Chloe Bennett

Chloe Bennett explores the intersection of pop culture, streaming entertainment, digital trends, and contemporary lifestyle. Her weekly commentary reaches thousands of culture enthusiasts.