使用Map接口将元素放入HashMap

时间:2015-07-16 08:55:30

标签: java dictionary kotlin

我正在尝试Kotlin,我遇到了一个我无法解决的小问题。 当我有以下结构时,我可以将元素放入地图中:

val map = HashMap<String, String>()
map["asd"] = "s"
map.put("34", "354")

然而,当我使用Map界面创建地图时,我只能阅读它们,我做错了什么?

val map: Map<String, String> = HashMap<String, String>();
map.put("24", "34") //error
map["23"] = "23" //error

或许我对Kotlin中的接口感到困惑?

1 个答案:

答案 0 :(得分:12)

在第一个示例中,map获取HashMap的类型, 在第二个示例中,您将其转换为接口映射。

地图是一个只读地图,没有放置/设置,请参阅here

为了能够编辑地图,您应该使用MutableMap