kotlin map 与 flatmap

kotlin map 与 flatmap 是2个不同的概念的

map 是一种数据结构,flatmap 是一个高阶函数,处理集合用的

Map

Map 是一种数据结构,它由一系列的键值对组成,每个键都是唯一的,并且与一个特定的值相关联。你可以通过键来查找对应的值

下面定义一个map 并往里面填写值

复制代码
val myMap = HashMap<String, String>()
        myMap.put("张三","15")
        myMap.put("李四","16")
        // kotlin 写法
        myMap["王二"] = "17"

或者使用mapOf

复制代码
val myMap: Map<String, Int> = mapOf("one" to 1, "two" to 2)

跟java的差不多的,

flatmap

flatMap 是一个函数,通常用于集合(如 List、Set 等)操作。它将一个集合中的每个元素转换为其映射结果的集合,然后将所有的映射结果合并成一个新的集合

复制代码
 val lists = listOf(listOf("hello", "world"), listOf("kotlin", "rocks"))
 val words = lists.flatMap { it }
 Log.d("=======words", words.toString()) // 打印结果["hello", "world", "kotlin", "rocks"]

 val list = listOf("123", "45")
 Log.d("========list",list.flatMap { it.toList() }.toString()) //打印结果[1, 2, 3, 4, 5]
相关推荐
a程序小傲12 分钟前
米哈游Java面试被问:gRPC的HTTP/2流控制和消息分帧
java·开发语言·tcp/ip·http·面试·职场和发展·php
tudficdew24 分钟前
类型安全容器设计
开发语言·c++·算法
naruto_lnq24 分钟前
C++与Docker集成开发
开发语言·c++·算法
独自破碎E29 分钟前
【双指针】接雨水
java·开发语言
小北方城市网31 分钟前
MyBatis-Plus 生产级深度优化:从性能到安全的全维度方案
开发语言·redis·分布式·python·缓存·性能优化·mybatis
@呵呵37 分钟前
上传图片裁剪
开发语言·javascript·vue.js
爱不离此41 分钟前
安卓和Flutter混合开发打断点
android·flutter
zfj3211 小时前
好书分享:《两周自制脚本语言》-用java实现一个脚本语言
java·开发语言·python·编译原理
u0109272711 小时前
自定义类型转换机制
开发语言·c++·算法
叶羽西1 小时前
Android15借助Linux proc虚拟文件系统调试用户态实现
android·linux kernel