Yun*_*aya 2 android dictionary kotlin android-volley
在使用 Kotlin 和 Volley 库的 Android 中,我使用下面的代码将地图放入 jsonObject 中。
val params = mutableMapOf<String, String>()
params["key1"] = "value1"
params["key2"] = "value2"
val parameter = JSONObject(params)
Run Code Online (Sandbox Code Playgroud)
这给了我以下错误:
Java type mismatch expected (Mutable)Map<(raw) Any?, (raw) Any?>! but found MutableMap<String, String>. Use explicit cast
Run Code Online (Sandbox Code Playgroud)
params as Map<*, *>构造函数JSONObject采用Map原始类型(未指定泛型)。因此,您应该提供一个可以是以下Any类型的地图:
val params = mutableMapOf<Any?, Any?>()
params["key1"] = "value1"
params["key2"] = "value2"
val parameter = JSONObject(params)
Run Code Online (Sandbox Code Playgroud)
警告(Mutable)Map<(raw) Any?, (raw) Any?>显示 Java 参数参数 - 声明它可以预期 aMap或MutableMap,因为您从 Kotlin 调用 Java 代码 - Java 不知道 是Map可变的还是不可变的。请注意,Kotlin 不支持原始类型,只有在调用 Java 代码时才会遇到此问题。
| 归档时间: |
|
| 查看次数: |
1608 次 |
| 最近记录: |