我正在迭代一组字符串值,并将每个字符串值传递给外部函数,如下所示:
List<String> myArray = ["a", "b", "c"]
myArray.each() {
myExternalFunction({it})
}
但是,我收到上面的关闭错误。为什么会这样? {it}
在封闭内部时是否会评估为String
?为什么它将闭包本身作为参数传递?
答案 0 :(得分:1)
List<String> myArray = ["a", "b", "c"]
myArray.each {
myExternalFunction(it)
}
myExternalFunction
除了一个String,但是当前的实现{it}
是一个传递给该方法的闭包。因此抱怨。
您可以找到有关Closures in Groovy.
的更多信息