加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Groovy Tip 11 GDK的Object扩展方法

发布时间:2020-12-14 16:59:58 所属栏目:大数据 来源:网络整理
导读:?????????????????????? Groovy Tip 11 GDK的Object扩展方法 ? GDK对Java的Object类做了很多的扩展,但这些方法主要用于集合类和其他的组合类对象。其中,最著名的就是each方法,each方法在这里不再介绍,但其他一些方法也会比较常用。 1. ?????? 方法 any
?????????????????????? Groovy Tip 11 GDK的Object扩展方法
?
GDK对Java的Object类做了很多的扩展,但这些方法主要用于集合类和其他的组合类对象。其中,最著名的就是each方法,each方法在这里不再介绍,但其他一些方法也会比较常用。
1.?????? 方法any
是指只要集合类对象中的任何一个元素符合闭包的条件,就返回true。如:
def list = [ 23 , 21 , 2 , 35 , 42 , 32 , 1 , 9 , 234 , 34 ]
??? ?
??? ? println list. any {
?????? ?it> 100
?}
?
结果为:
true
?
??? ? def list = [ 23 , 34 ]
??? ?
??? ? println list. any {
?????? ? def result = it/ 3
?????? ?
?????? ?result> 100
?}
?
结果为:
false
?
2.?????? 方法collect
是一个集合类对象元素收集方法,将集合类对象中所有元素作闭包的运算后组成一个新的集合类对象返回。如:
??? ? def list = [ 23 , 34 ]
??? ?
?????? def results = list. collect {
?????????? it* 2
?????? }
??????
??? println results
?
结果为:
[46,42,4,70,84,64,2,18,468,68]
?
?
3.?????? 方法every
是指如果集合类对象中所有的元素都满足闭包条件,则返回true;否则,只要有一个元素不满足闭包条件,就返回false。
??? ? def list = [ 23 , 34 ]
??? ?
?????? println list. every {
?????????? it> 2
??? }
?
结果为:
false
?
??? ? def list = [ 23 , 34 ]
??? ?
?????? println list. every {
?????????? it> 0
??? }
?
结果为:
true
?
?
4.?????? 方法findAll
将集合类对象中所有满足闭包条件的元素组成一个新的集合类对象返回。如:
??? ? def list = [ 23 , 34 ]
??? ?
??????
?????? def results = list. findAll {
?????????? it> 40
?????? }
??????
??? println results
?
结果为:
[42,234]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读