如何在 Kotlin 中将列表 (List) 转换为字典 (Map)?
大家好!我刚开始学习 Kotlin,遇到了这样一个问题。我有一个对象列表 (data class),例如用户列表:
```kotlin
data class User(val id: Int, val name: String)
val users = listOf(
User(1, "Alice"),
User(2, "Bob"),
User(3, "Charlie")
)
```
我需要将这个列表转换为字典 (Map),其中键是 `id`,值是 `User` 对象本身(或其名称)。在 Java 中,我会使用循环或 Stream API,但在 Kotlin 中,据我所知,有更简洁的方法。
我尝试过写类似 `users.map { it.id to it }` 的代码,但这返回的是配对列表,而不是 Map。后来我找到了 `toMap()` 方法,但它并不总是按我预期的方式工作,特别是当存在重复键时。
请告诉我如何正确且优雅地解决这个问题?Kotlin 标准库中哪些函数最适合用于此?提前感谢!
<<>>
使用