Groovy代码示例 – collect()方法
collect()方法的使用
Groovy的collect()
方法用于遍历集合对象并执行闭包。本文将示例集合对象的collect()
方法的使用。
collect()
方法可以接受默认的闭包Closure.IDENTITY
作为参数,也可以使用闭包(closure)作为参数,还可以使用集合(collection)及闭包(closure)作为参数。
//默认的闭包
public List collect()
//闭包作为参数
public List collect(Closure transform)
//集合和闭包作为参数
public Collection collect(Collection collector, Closure transform)
下面看一下简单collect()方法的典型应用
//定义一个list
def fruits = ["Banana", "Apple", "Grape", "Pear"]
//it为集合中的每个对象 对于每个对象执行toUpperCase()把所有的对象变成大写
def upperCaseFruits = fruits.collect { it.toUpperCase() }
println upperCaseFruits // [BANANA, APPLE, GRAPE, PEAR]
使用Collect()方法遍历并提供初始的集合对象作为参数
我们看一下如何遍历一个集合(fruits)以及把额外的集合(initialFruits)作为collect()方法的参数共同遍历。
//定义额外的集合
def initialFruits = ["Orange", "Lemon"]
//定义要遍历的集合
def fruits = ["Banana", "Apple", "Grape", "Pear"]
//执行遍历与闭包
def totalFruits = fruits.collect(initialFruits, { it.toUpperCase() })
//执行遍历的集合数据改变
println totalFruits // [Orange, Lemon, BANANA, APPLE, GRAPE, PEAR]
//额外集合的数据同样改变
println initialFruits // [Orange, Lemon, BANANA, APPLE, GRAPE, PEAR]
接下来看看如何遍历集合获得没有重复值的集合数据
//定义一个list,有重复数据Banana
def fruits = ["Banana", "Apple", "Grape", "Pear", "Banana"]
//使用一个空的HashSet作为遍历参数并执行闭包
def distinctFruits = fruits.collect(new HashSet(), { it })
//获得到没有重复数据的集合
println distinctFruits // [Apple, Pear, Grape, Banana]
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/05/07/groovy-code-example-collect-method/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
1
二维码
打赏
海报
Groovy代码示例 – collect()方法
collect()方法的使用
Groovy的collect()方法用于遍历集合对象并执行闭包。本文将示例集合对象的collect()方法的使用。
collect()方法可以接受默认的闭包Closur……
文章目录
关闭
共有 0 条评论