Kotlin-集合中映射操作符

数据源:val list = listOf(1, 2, 3, 4, 5, 6)

flatMap:遍历所有的元素,为每一个创建一个集合,最后把所有的集合放在一个集合中。

                操作:list.flatMap{listOf(it,it+1)}

                结果:listOf(1,2,2,3,3,4,4,5,5,6,6,7)

groupBy:返回一个根据给定函数分组后的map。

                操作:list.groupBy{ if(it%2==0) "even" else "odd"}

                结果:mapOf("odd" to listOf(1,3,5), "even" to listOf(2,4,6))

map:返回一个每一个元素根据给定的函数转换所组成的List。

                操作:list.map{it*2}

                结果:listOf(2,4,6,8,10,12)

mapIndexed:返回一个每一个元素根据给定的包含元素index的函数转换所组成的List。

                操作:list.mapIndexed{index,it -> index*it}

                结果:listOf(0,2,6,12,20,30)

mapNotNull:返回一个每一个非null元素根据给定的函数转换所组成的List。

                val list1 = listOf(1, 2, 3, 4, 5, null)

                操作:list1.mapNotNull{it*2}

                结果:listOf(2,4,5,8,10)

你可能感兴趣的:(Kotlin-集合中映射操作符)