从Groovy中的map返回多个值?

Joh*_*han 0 groovy

假设我有这样的地图:

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](列表或元组或其他一些数据结构).

dsh*_*rew 6

map.subMap(keys)*.value
Run Code Online (Sandbox Code Playgroud)

Spread Operator(*.)​​用于对聚合对象的所有项目调用操作.它相当于对每个项目调用操作并将结果收集到列表中

  • 非常好.这是文档:http://www.groovy-lang.org/operators.html#_spread_operator (2认同)