【发布时间】:2010-03-02 08:09:45
【问题描述】:
闭包内的代码可以引用it变量。
8.times { println it }
或
def mywith(Closure closure) {
closure()
}
mywith { println it }
考虑到这种行为,您不能指望以下代码打印0011
2.times {
println it
mywith {
println it
}
}
而我必须写
2.times { i ->
println i
mywith {
println i
}
}
我的问题是:为什么没有参数的闭包会覆盖 it 变量,即使它们不需要它。
【问题讨论】:
标签: groovy