如何将kotlin映射分配给Java库映射。
这会为对象和任意对象提供类型不匹配错误。

我需要从我的kotlin代码映射中分配一个第三方Java库中的Java映射变量。

val model = JavaModel() //from 3rd party java library

val params:MutableMap<String, Any> = HashMap()
params.put("key","value")
model.params = params //gives error below

类型不匹配:推断的类型为MutableMap<String, Any>,但应为Map<String, Object>?

最佳答案

Java的Object与Kotlin的Any不同,因此类型MutableMap<String, Any>Map<String, Object>?不匹配,因为您无法更改第三方Java库,只需将params声明为:

val params: MutableMap<String, Object> = HashMap()

10-02 05:44
查看更多