21、map find collect


class GroovyTest {

    static void main(args) {
        def people = [
                1: [name:'Bob', age:32, gender:'M'],
                2: [name:'Johnny', age:36, gender:'M'],
                3: [name:'Claire', age:21, gender:'F'],
                4: [name:'Amy', age:54, gender:'F']
        ]

        def agesOfMales = people.findAll{
            id,person -> person.gender == 'M'
        }.collect{
            id, person -> person.age
        }
        println agesOfMales


        def females = people.findAll{it.value.gender == 'F'}
        def ageOfFemales = females.collect{it.value.age}
        println ageOfFemales

    }
}

输出:

[32, 36]
[21, 54]
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容