我是靠谱客的博主 和谐皮卡丘,最近开发中收集的这篇文章主要介绍Gradle系列知识(二)——Groovy的数据结构List,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、集合list
1.list的定义
 def list = [1,2,3,4,5,6,7,8]
 def array = [10,20,30,40,50] as int[]

第一种是list的定义,第二种是数组的定义

2.往list里面添加元素
def list = [1,2,3,4,5,6,7,8]
list.add(9)
list.add(0,100)//往下边为0的位置添加元素100
list<<10//往list中添加元素10
def list2 = list+11//在list 集合的尾部添加元素11,形成一个新的集合
println(list2)

看看打印结果

[100, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
3.移除元素
def list = [1,2,3,4,5,6,7,8,9,10]
println("移除第0个元素")
list.remove(0)
println(list)


println("移除元素2")
list.remove((Object)2)
println(list)

println("移除元素10")
list.removeElement(10)
println(list)

println("移除所有的偶数元素")
list.removeAll{
    return it%2 == 0
}
println(list)

println("移除集合中的元素3和元素5")
println(list-[3,5])

输出结果

移除第0个元素
[2, 3, 4, 5, 6, 7, 8, 9, 10]
移除元素2
[3, 4, 5, 6, 7, 8, 9, 10]
移除元素10
[3, 4, 5, 6, 7, 8, 9]
移除所有的偶数元素
[3, 5, 7, 9]
移除集合中的元素3和元素5
[7, 9]
4.查找元素

看看以下使用代码

def list = [1,2,3,4,5,6,7,8,9,10]


println "查找第一个偶数"
int result=list.find{
    return it%2 == 0
}
println result



println "查找所有偶数"
def result2=list.findAll({
    return it%2 ==0
})
println result2


println "查找是否有偶数"
def result3=list.any{
    return it%2 ==0
}
println result3


println "查找是否全部是偶数"
def result4=list.every{
    return it%2 ==0
}
println result4



println "查找最小值"
def result5=list.min{
    return Math.abs(it)
}
println result5

println "查找最大值"
def result6=list.max{
    return Math.abs(it)
}
println result6



println "统计所有大于0的数有多少个"
int result7=list.count{
    return it>0
}
println result7

输出结果:

查找第一个偶数
2
查找所有偶数
[2, 4, 6, 8, 10]
查找是否有偶数
true
查找是否全部是偶数
false
查找最小值
1
查找最大值
10
统计所有大于0的数有多少个
10
5.排序
def list = [7,2,4,6,8,1,3,9,10,5]
println(list.sort())

输出结果

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

上面我们可以看出默认排序的api是按升序排列的

继续看看下面代码

def list = [7,2,4,6,8,1,3,9,10,5]


list.sort({a,b->
    if(a>b) return 1
    if(a<b) return -1
    return 0
})
println(list)

这里sort函数接收一个闭包,闭包里面的返回值跟java中的compareTo一样,a、b是从左到右相连的两个数,比较的时候,如果两个数需要交换位置,则返回1,代码中如果a>b,返回1,即需要交换位置,所以是升序排序。
看看输出结果

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

其他对象的排序跟compareTo一样,传入闭包定义排序规则即可

最后

以上就是和谐皮卡丘为你收集整理的Gradle系列知识(二)——Groovy的数据结构List的全部内容,希望文章能够帮你解决Gradle系列知识(二)——Groovy的数据结构List所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部