grovvy-集合list的使用
2019-01-14 本文已影响6人
望月成三人
myList = [1, 2, 3]
resultList = new ArrayList()
resultList.addAll(myList)
println(resultList) //[1, 2, 3]
println(resultList[0]) // 1
resultList = new LinkedList(myList)
println(resultList) //[1, 2, 3]
println(resultList[1]) // 2
longList = (0..10).toList()
println(longList) //[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- 维护list
def listItem = [1, 2, 3]
// 交集
println(listItem.intersect([1,2,5])) //[1, 2]
println(listItem.disjoint([4,5,6])) //true
println(listItem.disjoint([3,5,6])) //false
println([1, listItem].flatten()) //[1, 1, 2, 3] 并集
listItem = [1, 2, 3]
listItem.pop() // 删除
println(listItem) //[1, 2]
listItem = [1, 2, 3]
listItem.remove(1)
println(listItem) //[1, 3]
listItem = [1, 2, 3]
listItem.push(4) //新增
println(listItem) //[1, 2, 3, 4]
listItem = [1, 0, 3]
println(listItem.sort()) //[0, 1, 3]
println(listItem.reverse()) //[3, 1, 0]
listItem = [[1, 0], [0, 1, 2]]
listItem = listItem.reverse()
println(listItem) // [[0, 1, 2], [1, 0]]
listItem = ["a", "b", "aaa", "abc", "a"]
listItem.removeAll("a")
println(listItem) // [b, aaa, abc]
listItem = ["a", "b", "aaa", "abc", "a"]
listItem.remove("a")
println(listItem) // [b, aaa, abc, a]
listItem = [1, 2, 3]
listItem = listItem.collect { it*2}
println(listItem) //[2, 4, 6]
listItem = [1, 2, 3]
listItem = listItem.findAll{
it % 2 == 1
}
println(listItem) //[1, 3]
// 用hashset去除重复数字
listItem = [1,1,2,3]
listItem = new HashSet(listItem).toList()
println(listItem) // 去重复的数字 [1,2,3]
listItem = [1,1,2,3]
println(listItem.unique()) //去重复的数字 [1, 2, 3]