groovy:在地图上找到一个键并返回其值

groovy:在地图上找到一个键并返回其值,第1张

概述我想在给定的地图中找到一个特定的键。如果找到密钥,我想从地图中获取该密钥的值。 这是我到目前为止管理的 def mymap = [name:"Gromit", likes:"cheese", id:1234]def x = mymap.find{ it.key == "likes" }if(x) println x.value 这个工作,输出是预期的“奶酪”。太好了,但我不想在最后 我想在给定的地图中找到一个特定的键。如果找到密钥,我想从地图中获取该密钥的值。

这是我到目前为止管理的

def mymap = [name:"Gromit",likes:"cheese",ID:1234]def x = mymap.find{ it.key == "likes" }if(x)    println x.value

这个工作,输出是预期的“奶酪”。太好了,但我不想在最后做x.value,我不想做(x)。我想要x直接包含值。

我不能直接得到这个值,就像这样:

def mymap = [name:"Gromit",ID:1234]def x = mymap.find{ it.key == "likesZZZ" }.valueprintln x

因为在这种情况下,find close为null,所以会导致Null指针异常。当然,上面的代码片段可以在it.key ==“喜欢”时工作,但是我不确定我将始终在地图中找到目标键。

什么是“GroovIEr”和安全的方式来做这个在地图上:

>检查地图是否具有给定的键,
>如果是,请获取此键的值

解决方法
def mymap = [name:"Gromit",ID:1234]def x = mymap.find{ it.key == "likes" }?.valueif(x)    println "x value: ${x}"println x.getClass().name

?。检查null并且不会在Groovy中创建异常。如果键不存在,结果将是一个org.codehaus.groovy.runtime.NullObject。

总结

以上是内存溢出为你收集整理的groovy:在地图上找到一个键并返回其值全部内容,希望文章能够帮你解决groovy:在地图上找到一个键并返回其值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1249427.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存