Get key in groovy maps
Asked Answered
F

2

60
def map = [name:"Gromit", likes:"cheese", id:1234]

I would like to access map in such a way that I can get the key

something like the output should be

map.keys returns array of string. basically i just want to get the keys

output:

name
likes
id
Fitts answered 4/2, 2011 at 12:38 Comment(0)
C
99

try map.keySet()

and if you want an array:

map.keySet() as String[]; // thx @tim_yates

Or, more groovy-ish:

map.each{
    key, value -> print key;
}

Warning: In Jenkins, the groovy-ish example is subtly broken, as it depends on an iterator. Iterators aren't safe in Jenkins Pipeline code unless wrapped in a @NonCPS function.

Civies answered 4/2, 2011 at 12:42 Comment(3)
or map.keySet() as String[]Calorifacient
or map.keySet().collect()Zenas
or map.keySet() as List.Pauperize
T
12
def map = [name:"Gromit", likes:"cheese", id:1234]
    
println map*.key

In groovy * is use for iterate all

Towardly answered 21/9, 2021 at 7:6 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.