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']
相关推荐
LinHenrY12272 分钟前
初识C语言(数据在内存中的存储)
c语言·开发语言·算法
by__csdn2 分钟前
javascript 性能优化实战:异步和延迟加载
开发语言·前端·javascript·vue.js·性能优化·typescript·ecmascript
青铜弟弟3 分钟前
R语言与python升级包的问题
开发语言·python·r语言
CC.GG6 分钟前
【C++】STL容器----map和set的使用
开发语言·c++
Luna-player7 分钟前
Spring整合MyBatis-Pluss 部分课堂学习笔记
java·开发语言·tomcat
八个程序员7 分钟前
汉字古诗生成c++
开发语言·c++
zore_c8 分钟前
【C语言】数据结构——顺序表超详解!!!(包含顺序表的实现)
c语言·开发语言·数据结构·c++·经验分享·笔记·线性回归
Trouvaille ~11 分钟前
【Java篇】以简驭繁:接口的精简与程序的优雅
java·开发语言·接口·抽象工厂模式·类和对象·javase·基础入门
一只乔哇噻12 分钟前
java后端工程师+AI大模型开发进修ing(研一版‖day62)
java·开发语言·算法·语言模型