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]
相关推荐
星释1 天前
Rust 练习册 109:深入探索列表关系判断
开发语言·后端·rust
lsx2024061 天前
Python3 实例
开发语言
tealcwu1 天前
【Unity实战】如何使用VS Code在真实Android设备上调试 Unity应用
android·unity·游戏引擎
老华带你飞1 天前
作业管理|基于Java作业管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
JIngJaneIL1 天前
基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
星释1 天前
Rust 练习册 110:探索倍数之和的数学之美
开发语言·后端·rust
m0_471199631 天前
【JavaScript】forEach 和 map 核心区别(附示例+选型)
开发语言·前端·javascript
MSTcheng.1 天前
【C++】菱形继承为何会引发二义性?虚继承如何破解?
开发语言·c++
Lion Long1 天前
C++20 异步编程:用future、promise 还是协程?
开发语言·c++·stl·c++20
lly2024061 天前
Web 标准:构建高效、兼容、可访问的网络基石
开发语言