如何匹配数组中的值并将结果与键/值对匹配

  • 本文关键字:结果 数组 何匹配 groovy
  • 更新时间 :
  • 英文 :


我正在使用Groovy。

我有两组数据。第一个是站点代码数组,第二个是一些 JSON 数据的键/值映射。

我需要遍历站点代码列表并将它们与地图中的键相匹配。一旦找到匹配项,它就需要返回相应的映射值。

地图数组如下所示:

list = ["WSM-3572", "WSM-0301","WSM-10153"]

密钥对如下所示:

{id=3dd9794a-d148-4f74-a297-cefe22d05cfd, name=Nedbank Mall of Africa(WSM-3572)},{id=8fb57fda-8bdf-4aef-8d50-f3bf8d2235e1, name=Caffe Rossini (WSM-3432)}, 
{id=bd12b3ef-b72f-4211-8987-2e0c6f1f688d, name=Steers Welkom (WSM-4502)}, 

因此,在上述情况下,我们应该浏览列表,当它到达WSM-3572时,它应该找到它并匹配名称中的站点代码:Nedbank Mall of Africa(WSM-3572)然后返回 id=3dd9794a-d148-4f74-a297-cefe22d05cfd .

我希望这一切都有意义,并提前感谢

假设你已经使用JsonSlurper将json加载到地图中,类似于

list.each { code ->
    println "$code = " + json.find { it ->
        it.name.contains "($it)"
    }?.id
}

应该这样做。

不是在电脑上,但应该很接近

最新更新