Hen*_*Dev 1 arrays groovy json
我正在尝试从 Groovy 中的 JSON 数组获取 ID 列表。我知道如何使用常规 FOR 循环获取 ID,但我想知道如何使用 every方法执行相同操作。我不知道如何实施。有人有什么主意吗?先感谢您。这是我的代码,使用常规 for 循环可以正常工作。不过我想用每种方法来做到这一点。
import groovy.json.*
def restresponse = '[{"id":5, "name":"Bob"},{"id":8, "name":"John"},{"id":12, "name":"Jim"},{"id":20, "name":"Sally"}]'
def json = new JsonSlurper().parseText(restresponse)
def myListOfIDs = []
for (int i = 0; i < json.size; i++) {
myListOfIDs.add(json[i].id) // getting all ID's for each SourceSystem
}
log.info(myListOfIDs) // This prints out all this IDs
Run Code Online (Sandbox Code Playgroud)
执行此“转换”的最短方法是使用 Groovy 的 Collectioncollect方法,例如:
def myListOfIDs = json.collect { ele -> ele.id }
Run Code Online (Sandbox Code Playgroud)
编辑:正如@dmahapatro 指出的,还有更短的可能性:
def myListOfIDs = json*.id
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4909 次 |
| 最近记录: |