Groovy闭包的深入探索
1. 闭包与集合方法
在Groovy中,闭包和集合方法是非常强大的工具。例如,Groovy列表有许多迭代函数,像 each 方法:
def flintstones = ["Fred","Barney"]
flintstones.each {
println "Hello, ${it}"
}
这里的 each 方法看似是一种特殊的控制循环,但实际上它是对 Object 类的 each 方法的调用。 each 方法接受一个闭包作为参数,花括号 {} 内的代码定义了一个匿名闭包。
闭包和普通代码块不同,普通Java或Groovy代码块一旦被遇到就会执行,而闭包中花括号内的代码直到调用闭包的 call() 方法时才会执行,示例如下:
println "one"
def two =
{
println "two"
}
println "three"
two.call()
println "four"
输出结果为:
one
three
two
four
java.lang.Object 类有许多类似的方法,如 ea
超级会员免费看
订阅专栏 解锁全文
84

被折叠的 条评论
为什么被折叠?



