kotlin flatten 与 flatMap

kotln中 flattenflatMap 在 Kotlin 中虽然都用于扁平化处理集合,但它们的用法和效果并不完全一样

flatten

flatten 函数主要应用于嵌套集合(如 List of List 或 Set of Set 等),它会将嵌套集合中的所有元素合并到一个单一层次的集合中。

复制代码
val nestedList = listOf(listOf("a", "b"), listOf("c", "d"))
val flattenedList = nestedList.flatten() // ["a", "b", "c", "d"]

flatMap

flatMap 不仅可以将嵌套集合扁平化,更重要的是它允许你对每个子集合应用一个映射函数来生成新的元素。这个映射函数的结果应当是一个集合,然后这些结果集会被合并成一个新的集合

复制代码
val lists = listOf(listOf("hello"), listOf("world"))
val chars = lists.flatMap { it.map { it.toCharArray() } } // ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd']
相关推荐
期待のcode1 分钟前
线程睡眠sleep方法
java·开发语言
gjxDaniel2 分钟前
Bash编程语言入门与常见问题
开发语言·bash
孟秋与你3 分钟前
【安卓】开发一个读取文件信息的简易apk
android
zhooyu3 分钟前
OpenGL 与 C++:深入理解与实现 Transform 组件
开发语言·c++
42nf4 分钟前
Android Launcher3添加负一屏
android·launcher3·android负一屏
captain37618 分钟前
Java-链表
java·开发语言·链表
LcVong19 分钟前
老版本Android源码在新版本IDE打开的常规报错及解决方案
android·ide
tqs_1234519 分钟前
跳出多层循环的方式
java·开发语言
froginwe1124 分钟前
媒体查询:现代网页设计的核心工具
开发语言
别退29 分钟前
flutter_gradle_android
android·flutter