Map 向地图中的关键点添加值

Map 向地图中的关键点添加值,map,groovy,Map,Groovy,我有记录 record = [ [ name1:'value1', name2:'value2', name3:'value3' ], [ name1:'value6', name2:'value7', name3:'value8' ] ] 我想再添加两个键/值对,值为boolean(true/false),如下所示 当我尝试使用add或put函数时,似乎不起作用(替换现有值或不执行任何操作)只需执行以下操作: record = record.collect { it

我有记录

record = [ [ name1:'value1', name2:'value2', name3:'value3' ],
           [ name1:'value6', name2:'value7', name3:'value8' ] ] 
我想再添加两个键/值对,值为boolean(true/false),如下所示

当我尝试使用add或put函数时,似乎不起作用(替换现有值或不执行任何操作)

只需执行以下操作:

record = record.collect { it + [ name4:false, name5:true ]  }
或者,您也可以执行以下操作:

record = record*.plus( name4:false, name5:true )
只要做:

record = record.collect { it + [ name4:false, name5:true ]  }
或者,您也可以执行以下操作:

record = record*.plus( name4:false, name5:true )

要添加到上面(+1)的Patricks答案,映射包含一个集合而不是列表,因此所有键都必须是唯一的。因此,不能直接将多个值指定给单个键

在许多解决方案中,您也可以保存一个对象:

Map<String, myObject>
Map

它包含许多不同的值,这将仍然保持集合的唯一性,因为只有一个键。

要添加到Patricks answer(+1)中,映射包含集合而不是列表,因此所有键都必须是唯一的。因此,不能直接将多个值指定给单个键

在许多解决方案中,您也可以保存一个对象:

Map<String, myObject>
Map

它包含许多不同的值,这仍然会保持集合的唯一性,因为只有一个键。

我不会一直将它们标记为
java
,它们是groovy问题。因此,如果发布有效的groovy;-),事情会变得更简单我不会一直将它们标记为
java
,它们是groovy问题。因此,如果发布有效的groovy;-),事情会变得更容易感谢您删除Java标记并给出您的答案。。。和往常一样…为删除Java标记和您的答案干杯。。。像往常一样…为响应干杯为响应干杯为响应干杯