1

我有以下 JSON 代码:

{  
"TIMESTAMP":"2017-05-26-20.22.40.016000",
"dateTime":"2017-05-26H-20.22.4",
"AMUCCY1":"ADP",
"rates":[  
   {  
      "AMUCCY2":"AED",
      "AMURAT":"1.000000000",
      "AMUNXRT":0
  },
  {  
     "AMUCCY2":"AFA",
     "AMURAT":"1.000000000",
     "AMUNXRT":0
  },
  {  
     "AMUCCY2":"ALL",
     "AMURAT":"1.000000000",
     "AMUNXRT":0
  },
  {  
     "AMUCCY2":"AMD",
     "AMURAT":"1.000000000",
     "AMUNXRT":0
  }
 ]
}

groovy 中是否有快速的方法,我可以循环遍历每个“速率”并获得值,比如说“AMUCCY2”?

我试着做这个代码:

jsonObj.rates.each {
    def toCurrencyMap = jsonObj.rates.AMUCCY2
    LOG.info "${toCurrencyMap}"
}

但是 toCurrencyMap 返回该字段的所有四个值的数组。我只想获取每个值;不是全部。

任何建议表示赞赏。

4

1 回答 1

1

你可以试试这个:

jsonObj.rates.each {
  println it.AMUCCY2
}

如果你想要列表/数组:

def result = jsonObj.rates.collect { it.AMUCCY2 }
println result
于 2017-05-29T04:42:23.813 回答