微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

初窥groovy之集合2

    之前总结了groovy中list的基本应用,当然我们也可以通过闭包,进行自定义的扩展。讲到闭包,这个很犀利,我对它理解也不深刻,只是明白它是对象形式存在,并且可以存在任何地方,类似于java中内部类,但又比内部类灵活。

    回到正题,下面通过简单闭包来点初步体验。

    之前总结到,通过list.sort()方法可以把一个集合通过升序排列。现在我需求把这个集合降序排列。当然,你可以先升序,在逆置集合。下面我们尝试下闭包的方法

def list=[1,5,3,2,8,213]
println "升序:${list.sort()}"

list.sort{  //通过闭包逆序,'<=>'符号相当于b.compareto(a)
     a,b->
    b<=>a
}
println "降序:${list}"

结果:    升序:[1,213]
             降序:[213,1]

需求2:自定义集合乱序方法

def list5=[1,43,1,68,7,5]
list5.sort{   //打乱数组顺序
    Math.random()
}
println "乱序:${list5}"

结果:   乱序:[43,5]

当然,我们还可以对list做更多的操作,任何你想的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐