Groovy闭包 Closure ( 闭包作为函数参数 | 代码示例 )
Posted 韩曙亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Groovy闭包 Closure ( 闭包作为函数参数 | 代码示例 )相关的知识,希望对你有一定的参考价值。
一、闭包作为函数参数
声明一个 fun 函数 , 可以 将参数声明为 Closure<?> 闭包类型 , 在该函数中 , 执行闭包内容 ;
声明函数 :
/**
* 定义一个方法 , 接收闭包作为参数 , 在方法中执行闭包内容
* @param closure
* @return
*/
def fun(Closure<?> closure)
closure()
调用上述函数时 , 只需要 将 闭包 当做 参数 传递到函数中 即可 :
fun (
println "Closure 1"
)
如果 闭包是函数的最后一个参数 , 可以 省略括号 , 将闭包写在函数后面 :
fun
println "Closure 2"
二、闭包作为函数参数代码示例
完整代码示例 :
/**
* 定义一个方法 , 接收闭包作为参数 , 在方法中执行闭包内容
* @param closure
* @return
*/
def fun(Closure<?> closure)
closure()
static void main(String[] args)
fun (
println "Closure 1"
)
fun
println "Closure 2"
执行结果 :
Closure 1
Closure 2
以上是关于Groovy闭包 Closure ( 闭包作为函数参数 | 代码示例 )的主要内容,如果未能解决你的问题,请参考以下文章
Groovy闭包 Closure ( 闭包类 Closure 简介 | 闭包 parameterTypes 和 maximumNumberOfParameters 成员用法 )
Groovy闭包 Closure ( 闭包类 Closure 简介 | 闭包 parameterTypes 和 maximumNumberOfParameters 成员用法 )
Groovy闭包 Closure ( 闭包参数绑定 | curry 函数 | rcurry 函数 | ncurry 函数 | 代码示例 )
Groovy闭包 Closure ( 闭包定义 | 闭包类型 | 查看编译后的字节码文件中的闭包类型变量 )
Groovy闭包 Closure ( 闭包调用 与 call 方法关联 | 接口中定义 call() 方法 | 类中定义 call() 方法 | 代码示例 )
Groovy闭包 Closure ( 闭包调用 与 call 方法关联 | 接口中定义 call() 方法 | 类中定义 call() 方法 | 代码示例 )