我是靠谱客的博主 儒雅小鸭子,最近开发中收集的这篇文章主要介绍Gradle基础知识——Groovy的闭包,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

点击图片领取阿里云云产品幸运券

  • 定义闭包
def closure_name = {
// closure body
}

上面代码定义一个名为 closure_name 的闭包,用途由 closure body 中的代码定义。匿名闭包指不声明闭包变量名,只有闭包方法体{ //closure body }

  • 无参闭包
def closure_with_no_param = {
println 'hello,world!'
}

执行closure_with_no_param()或者closure_with_no_param.call(),将输出hello,world!

  • 含参闭包
def closure_with_param = {
x,y-> println "x plus y is " + (x+y)
}

执行closure_with_param(1,2),结果为x plus y is 3!

可以设置默认参数值,例如:

def closure_with_param = {
x,y=0-> println "x plus y is " + (x+y)
}

执行closure_with_param(1),结果为x plus y is 1!

  • 与方法/函数的结合使用

定义闭包

def closure_demo = {
x -> println x
}

定义方法

def method_name(Closure closure_name){
for(int i=0;i<=100;i+=1){
closure_name(i)
}
}

执行method_name(closure_demo)或者method_name closure_demo,结果输出如下:

1
2
3
...
100
  • Gradle构建脚本简析
dependencies {
compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
testCompile group: 'junit', name: 'junit', version: '4.+'
}

其中:

  • dependencies为方法或函数名,参数为闭包类型
  • 接下来的{...}是一个闭包
//这是个闭包
{
compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
testCompile group: 'junit', name: 'junit', version: '4.+'
}
  • group: 'commons-collections'group变量的值设为commons-collections
  • compile为方法/函数

参考文献

  • https://www.w3cschool.cn/groovy/groovy_closures.html
  • http://blog.csdn.net/cckevincyh/article/details/75212415

点击图片领取阿里云云产品幸运券

最后

以上就是儒雅小鸭子为你收集整理的Gradle基础知识——Groovy的闭包的全部内容,希望文章能够帮你解决Gradle基础知识——Groovy的闭包所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部