dictionary - Groovy - 将 map 列表合并为单个 map

标签 dictionary groovy

我有一个 map 列表,我正在尝试将其组合成一个 map 。我尝试使用 map.collectEntries() 来执行此操作,但创建的 map 仅包含列表中的最后一个 map 。我的输入列表如下:

def people = [[name:'John', age:35], [name:'Jim', age:54]]

我希望计算出这样的 map :

def people = ['John':35, 'Jim':54]

最佳答案

您必须通过访问姓名和年龄的闭包从 map 中收集条目

def people = [[name:'John', age:35], [name:'Jim', age:54], [name:'Smith', age:'53']]

def nameAgeMap=people.collectEntries() {
    [it.name, it.age]
}

println(nameAgeMap)

关于dictionary - Groovy - 将 map 列表合并为单个 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50769335/

相关文章:

jenkins - 读取 jenkins groovy 脚本中的配置文件以获取构建参数

Grails gorm : queries with map

python - 使用循环将值添加到字典键

java - 根据 Map 内 TreeSet 中的值范围返回键

python - 在 Python OrderedDict 中获取关键索引?

java - 以有效的方式从 Map 中删除多个键?

arrays - Swift 数组和字典的不变性

grails - 如何从Grails中的 Controller 类保存外键?

grails - Groovy 方法拦截

windows - 为什么从函数返回的 gstrings 串联是一个空字符串 - Groovy 1.7.4