在Hashmap中搜索并返回值

时间:2013-10-09 09:31:51

标签: grails groovy

我正在尝试在grails应用程序中的hashmap中搜索,看起来像这样

 [[name: asset1, ips:[10.1.1.1, 10.1.2.3]], [name: asset2, ips:[192.168.1.1, 192.168.1.2, 192.168.1.3]], [name: asset3, [ips: 1.2.3.4, 2.3.4.5, 3.4.5.6]]]

现在我想搜索一个IP地址(例如10.1.1.1)并想要返回相应资产的名称(例如asset1)。

我不知道如何在grails中这样做。

我尝试过findAll(),但不知道这是否正确。

 asset = assetList.findAll{it.value == ipAddress}.each {name << it.key}

1 个答案:

答案 0 :(得分:2)

尝试:

asset = assetList.findAll{ ipAddress in it.ips}.name