我试图理解闭包在Groovy中是如何工作的以及如何在方法中传递这些闭包 .
我有FeedClass和feedData方法,在这个方法中我定义了一个闭包 .
但是,即使闭包是在方法内部定义的,我仍然会收到错误No Signature of method ...好像它期待方法参数中的闭包 .
void feedData(def Data) {
def calculateData=
{
if (it.even== null || it.odd== null)
println "error"
else
println "Ok"
}
Data.numbers.each calculateData
}
这是类,以及我如何调用该方法
FeedClass(def数据){
feedData(Data) {
}
1 回答
feedData
方法目前不期望第二个参数,它应该像这样声明:它可以像这样调用: