美文网首页Android 知识
Kotlin 内置函数- flat...

Kotlin 内置函数- flat...

作者: zcwfeng | 来源:发表于2022-05-06 11:34 被阅读0次

    打平:操作嵌套的集合,则可能会发现提供对嵌套集合元素进行打平访问的标准库函数

    • 第一个函数为 flatten()。可以在一个集合的集合(例如,一个 Set 组成的 List)上调用它。 该函数返回嵌套集合中的所有元素的一个 List
    val numberSets = listOf(setOf(1, 2, 3), setOf(4, 5, 6), setOf(1, 2))
    println(numberSets.flatten())
    

    result ------>
    [1, 2, 3, 4, 5, 6, 1, 2]

    • 另一个函数——flatMap() 提供了一种灵活的方式来处理嵌套的集合。 它需要一个函数将一个集合元素映射到另一个集合。 因此,flatMap() 返回单个列表其中包含所有元素的值。 所以,flatMap() 表现为 map()(以集合作为映射结果)与 flatten() 的连续调用。

    需要transform 自定义

    data class StringContainer(val values: List<String>)

        val containers = listOf(
            StringContainer(listOf("one", "two", "three")),
            StringContainer(listOf("four", "five", "six")),
            StringContainer(listOf("seven", "eight"))
        )
        println(containers.flatMap { it.values })
    

    result ------>
    [one, two, three, four, five, six, seven, eight]

    相关文章

      网友评论

        本文标题:Kotlin 内置函数- flat...

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