groovy用户指南

groovy用户指南

ID:40554183

大小:205.50 KB

页数:26页

时间:2019-08-04

groovy用户指南_第1页
groovy用户指南_第2页
groovy用户指南_第3页
groovy用户指南_第4页
groovy用户指南_第5页
资源描述:

《groovy用户指南》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、集合(1)List(java.util.List)list=[1,2,'hello',newjava.util.Date()]assertlist.size()==4assertlist.get(2)=='hello'注意:一切都是对象(数字会自动转换)(2)Map(java.util.Map)map=['name':'James','location':'London']assertmap.size()==2assertmap.get('name')=='James'(3)遍历集合list=[1,2,3]for(iinlist){printlni

2、} 2、 闭包(Closures)l        闭包类似Java的内类,区别是闭包只有单一的方法可以调用,但可以有任意的参数closure={param->println("hello${param}")}closure.call("world!")closure={greeting,name->println(greeting+name)}closure.call("hello","world!")l        闭包用“{}”括起,“->”前面是参数,后面是处理语句,使用call调用l        第一个例子演示了在字符串内使用参数的形

3、式:${param}l        第二个例子演示了多参数形式:用“,”分隔参数l        如果只有一个参数,可以不写,而使用缺省的参数“it”,如下面的例子:closure={println"hello"+it}closure.call("world!") 3、eachl        遍历集合,逐个传递给闭包[1,2,3].each{item->print"${item}-"}l        上面例子的输出结果是:1-2-3- 4、collectl        遍历集合,逐个传递给闭包,处理后的结果返回给对应的项value=[1,2

4、,3].collect{it*2}assertvalue==[2,4,6]与each区别:value2=[1,2,3].each{it*2}printlnvalue2value3=[1,2,3].collect{it*2}printlnvalue3结果:[1,2,3][2,4,6]返回值不同 5、findl        根据闭包断言,返回集合中找到的第一个项目value=[1,2,3].find{it>1}assertvalue==2 6、findAlll        根据闭包断言,返回集合中所有找到的项目value=[1,2,3].findA

5、ll{it>1}assertvalue==[2,3] 7、injectl        遍历集合,第一次将传递的值和集合项目传给闭包,将处理结果作为传递的值,和下一个集合项目传给闭包,依此类推value=[1,2,3].inject('counting:'){str,item->str+item}assertvalue=="counting:123"value=[1,2,3].inject(0){count,item->count+item}assertvalue==6 8、everyl        如果集合中所有项目都匹配闭包断言,就返回tru

6、e,否则返回falsevalue=[1,2,3].every{it<5}assertvalue value=[1,2,3].every{item->item<3}assert!value 9、anyl        如果集合中任何项目匹配闭包断言,就返回true,否则返回falsevalue=[1,2,3].any{it>2}assertvalue value=[1,2,3].any{item

7、item>3}assertvalue==false 10、             min/maxl        返回集合中的最小/最大项目(对象必须可比

8、较)value=[9,4,2,10,5].max()assertvalue==10value=[9,4,2,10,5].min()assertvalue==2value=['x','y','a','z'].min()assertvalue=='a' 11、             joinl        连接集合中的值成一个字符串value=[1,2,3].join('-')assertvalue=='1-2-3' 12、             yieldl        在Python和Ruby中通过yield语句创建“yield”风格的it

9、erators,在Groovy同样有效,只是使用的是闭包classFoo{ staticvoidmain(args){fo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。