在Kotlin中,您可以创建如下 map :
val items = mapOf("a" to 1, "b" to 2)
个
并检索如下所示的值:
val item = items["a"]
个
括号将调用get
函数.看看Kotlin的 map 源代码,我看到的get
函数是这样的:
public operator fun get(key: K): V?
我找不到get
的任何实现,所以不清楚Kotlin如何在内部找到 map 项.
在Kotlin中,您可以创建如下 map :
val items = mapOf("a" to 1, "b" to 2)
个
并检索如下所示的值:
val item = items["a"]
个
括号将调用get
函数.看看Kotlin的 map 源代码,我看到的get
函数是这样的:
public operator fun get(key: K): V?
我找不到get
的任何实现,所以不清楚Kotlin如何在内部找到 map 项.
根据您创建Kotlin映射的方式,可能会创建不同的实现.但在mapOf("a" to 1, "b" to 2)
的具体情况下,将创建kotlin.collections.LinkedHashMap
.LinkedHashMaps
实施取决于目标平台.更多信息可以在这里找到:What does a LinkedHashMap create in Kotlin?.如果目标平台是JVM,那么底层实现是Ifjava.util.HashMap
,它的Get函数.