美文网首页
Kotlin-集合中生产操作符

Kotlin-集合中生产操作符

作者: 122604 | 来源:发表于2017-11-29 09:46 被阅读0次

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

                  val listRepeated = listOf(2, 2, 3, 4, 5, 5, 6)

    merge:把两个集合合并成一个新的,相同index的元素通过给定的函数进行合并成新的元素作为新的集合的一个元素,返回这个新的集合。新的集合的大小由最小的那个集合大小决定。

                    操作:list.merge(listRepeated){it1,it2 -> it1+it2}

                    结果:listOf(3,4,6,8,10,11)

    partition:把一个给定的集合分割成两个,第一个集合是由原集合每一项元素匹配给定函数条件返回 true 的元素组成,第二个集合是由原集合每一项元素匹配给定函数条件返回 false 的元素组成。

                    操作:list.partition{it % 2==0}

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

    plus:返回一个包含原集合和给定集合中所有元素的集合,因为函数的名字原因,我们可以使用 + 操作符。

                    操作:1、list.plus(listOf(7,8))    2、list+listOf(7,8)

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

    zip:返回由 pair 组成的List,每个 pair 由两个集合中相同index的元素组成。这个返回的List的大小由最小的那个集合决定。

                    操作:list.zip(listOf(7,8))

                    结果:listOf(Pair(1,7),Pair(2,8))

    unzip:从包含pair的List中生成包含List的Pair。

                    操作:listOf(Pair(5,7),Pair(6,8)).unzip()

                    结果:Pair(listOf(5,6),listOf(7,8))

    相关文章

      网友评论

          本文标题:Kotlin-集合中生产操作符

          本文链接:https://www.haomeiwen.com/subject/hvzybxtx.html