常规列表传播

Dón*_*nal 4 groovy

如果运行以下Groovy代码,则断言通过

def foo(a, b) {
  a + b
}

assert 'aaabbb' == foo(['aaa', 'bbb'])
Run Code Online (Sandbox Code Playgroud)

这表明如果使用包含X元素的List参数调用方法,则将传播List并且将调用具有X参数的方法.

当然,只有在没有使用List类型(或其祖先)的单个参数定义的方法时才会发生这种情况.

我最近才读到另一个SO Groovy答案时才发现这个.我从来没有在Groovy文档,发行说明或书籍中看到它.它是一个隐藏的功能,一个错误,还是我错过的东西?

vir*_*yes 5

显然将在Groovy 2中删除:http: //groovy.329449.n5.nabble.com/removing-features-in-Groovy-2-td4422494.html

JT首先出现在删除列表中,看起来Groovy用户的每个人(都有影响力)都同意了.