码迷,mamicode.com
首页 > 其他好文 > 详细

Groovy使用List集合

时间:2016-01-29 20:56:15      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:

  1. 获取List集合中的元素

    def lst = [1,3,4,1,8,9,2,6]
    println lst[-1]
    println lst[-2]
    
    输出结果:
    输出:
    6
    2
    
  2. 使用Range(范围)对象获得集合中连续的几个值

    //从左至右取值
    def lst = [1,3,4,1,8,9,2,6] println lst[2..5] 输出结果: [4, 1, 8, 9]

    //从右至左取值
    def lst = [1,3,4,1,8,9,2,6] println lst[-1..-4]
    输出结果:
    [6, 2, 9, 8]
  3. 迭代ArrayList

    //从左至右顺序迭代
    lst = [1,3,4,1,8,9,2,6]
    lst.each{ print "${it}," }
    输出结果:
    1,3,4,1,8,9,2,6,
    
    //从右至左反方向迭代
    lst = [1,3,4,1,8,9,2,6]
    lst.each{ print "${it}," }
    输出结果:
    6,2,9,8,1,4,3,1,
    
    //迭代中显示索引
    def lst = [1,3,4,1,8,9,2,6]
    lst.eachWithIndex{ it,i -> print("${i},") }
    输出结果:
    0,1,2,3,4,5,6,7,
    
  4. 使用List的collect方法

    //查找list元素
    /*find()会找到第一次出现的匹配对象,它只会迭代到闭包返回true为止。已得到true,find方法就会停止迭代,并将当前的元素返回。如果遍历结束也没得到true,则返回null。*/
    lst = [1,3,4,1,8,9,2,6]
    println lst.find{ it > 4 }
    输出结果:
    8
    
    //查找list元素,返回所有符合条件元素
    lst = [1,3,4,1,8,9,2,6]
    println lst.findAll{ it > 4 }
    输出结果:
    [8,9,6]
    
    //查找list元素,返回元素下标
    lst = [1,3,4,1,8,9,2,6]
    println lst.findAllIndexOf{ it == 4 }
    输出结果:
    2
  5. 使用List的排序

    def ids = [5,6,3,7,1,4,9]  
    //可以认为是 Comparator 排序  
    ids.sort { a,b->  
        return -a.compareTo(b)  
    }  
    println ids  
    //自然排序  
    ids.sort();  
    println ids
    
    输出结果:
    [9, 7, 6, 5, 4, 3, 1]
    [1, 3, 4, 5, 6, 7, 9]
    
  6. list去重

    lst = [1,3,1,1,8,9,2,6]
    println lst.unique()
    输出结果:
    [1, 3, 8, 9, 2, 6]
    
  7. 将list元素链接成一个字符串

    lst = [‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    println lst.join(‘‘)
    println lst.join(‘,‘)
    输出结果:
    顺丰海淘就是好只卖正品
    顺丰海淘,就是好,只卖正品
    
  8. 元素替换

    lst = [‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    lst[0] = [‘sfht‘,‘.com‘]
    println lst.flatten()
    输出结果:
    [sfht, .com, 就是好, 只卖正品]
    
  9. +/-操作符


    lst = [‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    println lst - [‘就是好‘]
    输出结果:
    [顺丰海淘, 只卖正品]
    
    lst = [‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    println lst + [‘你说呢‘]
    输出结果:
    [顺丰海淘, 就是好, 只卖正品, 你说呢]
    
  10. list元素拉平

    lst = [[1,2],‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    println lst.flatten()
    输出结果:
    [1,2,‘顺丰海淘‘,‘就是好‘,‘只卖正品‘]
    

 

Groovy使用List集合

标签:

原文地址:http://www.cnblogs.com/muzi1994/p/5169928.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!