是否可以将映射扩展到方法参数列表
在 Python 中,这是可能的,例如。
Expanding tuples into arguments
我有一个 def map = ['a':1, 'b':2]
和方法 def m(a,b)
我想写 smt 就像 m(*map)
最佳答案
spread operator (*) 用于将列表拆分为单个元素。这可用于调用具有多个参数的方法,然后将列表扩展为参数值。
列表(Groovy 中的列表与 Python 中的元组 1 、 2 最接近):
list = [1, 2]
m(*list)
map :
map = [a: 1, b: 2]
paramsList = map.values().toList()
m(*paramsList)
重要的一点是您按位置传递参数。
关于Groovy 将元组/映射扩展为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13449530/