假设我有这样的地图:
def map = [name: 'mrhaki', country: 'The Netherlands', blog: true, languages: ['Groovy', 'Java']]
Run Code Online (Sandbox Code Playgroud)
现在我可以返回"submap"只有"name"和"blog",如下所示:
def keys = ['name', 'blog']
map.subMap(keys)
// Will return a map with entries name=mrhaki and blog=true
Run Code Online (Sandbox Code Playgroud)
但有没有办法轻松返回多个值而不是条目列表?
更新:
我想做这样的事情(这不起作用):
def values = map.{'name','blog'}
Run Code Online (Sandbox Code Playgroud)
这会产生例如values= ['mrhaki', true](列表或元组或其他一些数据结构).
map.subMap(keys)*.value
Run Code Online (Sandbox Code Playgroud)
Spread Operator(*.)用于对聚合对象的所有项目调用操作.它相当于对每个项目调用操作并将结果收集到列表中