我有一个凹槽代码(带有一些java样式元素)
dates.forEach new Consumer<Period>() {
@Override
void accept(Period period) {
println period
}
}
是否可以更简单?
我想要像
这样的东西dates.forEach println
或
dates.forEach println date
答案 0 :(得分:11)
只需使用
dates.each { println it }
答案 1 :(得分:2)
Groovy闭包可以填充请求单个方法接口的任何位置(与Java lambdas行为相同)。因此,您希望的代码已经非常接近实际工作:
groovy:000> [1,2,3].forEach{ println it }
1
2
3
===> null