【问题标题】:Get key in groovy maps在 groovy 地图中获取密钥
【发布时间】:2011-06-21 08:22:04
【问题描述】:
def map = [name:"Gromit", likes:"cheese", id:1234]

我想以能够获取密钥的方式访问地图

输出应该是这样的

map.keys 返回字符串数组。基本上我只是想拿到钥匙

输出:

name
likes
id

【问题讨论】:

    标签: groovy maps


    【解决方案1】:

    试试map.keySet()

    如果你想要一个数组:

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

    或者,更时髦:

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

    警告:在 Jenkins 中,groovy-ish 示例被巧妙地破坏了,因为它依赖于迭代器。除非包装在 @NonCPS 函数中,否则迭代器在 Jenkins 流水线代码中是不安全的。

    【讨论】:

    • map.keySet() as String[]
    • map.keySet().collect()
    • map.keySet() as List
    【解决方案2】:
    def map = [name:"Gromit", likes:"cheese", id:1234]
        
    println map*.key
    

    在 groovy 中 * 用于迭代所有

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多