collections - 从 groovy 中的嵌套列表中获取值

标签 collections groovy

我在 groovy 中有一个这样的 3 级嵌套列表

rList = [[[12, name1],[22,name2],[49,name3]],[[33, name5],[22,name6],[21, name7]]]

如何迭代它以从第一个子列表中获取名称值
所以我想要 rsublist = [name1, name2, name3]
提前致谢。

最佳答案

rList = [[[12, 'name1'], [22, 'name2'], [49, 'name3']], [[33, 'name5'], [22, 'name6'], [21, 'name7']]]
names = rList[0]*.getAt(1)
assert names == ['name1', 'name2', 'name3']

一、rList[0]为您提供第一个子列表,即 [[12, name1], [22, name2], [49, name3]] .然后,spread operator , *. , 用于应用相同的方法, getAt(1) , 到该列表的每个元素,这将返回一个包含子列表中每隔一个元素的列表,这是您要查找的值:)

您也可以使用 rList[0].collect { it[1] }这是等效的,如果您不习惯扩展运算符,可能会更熟悉。

关于collections - 从 groovy 中的嵌套列表中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10966177/

相关文章:

generics - C++/CLI 泛型,在 array<> 和其他集合中使用 T

使用 IntelliJ IDEA 在 Groovy 中调试迭代(闭包)

gradle - 如何在groovy附加函数中捕获变量?

java - 比较方法抛出一般契约异常

scala - 在 Scala 中将数组转换为可变集?

flutter - 如何在 Dart 中创建一个空集

Grails:如何在 GORM 中设置域类属性时执行操作

groovy - Groovy Closure中的变量作用域(全局变量和函数参数同名)

json - NIFI :Json Content Parsing in FlowFile

c# - PowerCollections - MultiDictionary 'Remove' 在找不到值时删除所有值