java - 将 Kotlin MutableMap 转换为 java.util.HashMap
问题描述
我正在处理一个非常古老的项目,其中有很多 java 代码,要替换它,这太麻烦了,而且由于 kotlin 比 java 好得多,我正在尝试将所有新的kotlin 中的代码,但是当我尝试使用此 kotlin 代码访问 java 代码时
val params = mutableMapOf<String, String>(
"name" to response.name,
"type" to response.type
)
product.params = params
我在下面有一个红色下划线params
,它说
Required: Hashmap<String!, Any!>!
Found: MutableMap<String, String>
这是我的 java setter
public void setParams(HashMap<String, Object> params){
this.params = params;
}
我可以在不更改 java 代码的情况下解决这个问题吗?如果可能或不可能,请提供帮助,以及解决此问题的解决方法是什么。
解决方案
您可以从参数构造一个新HashMap
的:
val params = mutableMapOf<String, String>(
"name" to response.name,
"type" to response.type
)
product.params = HashMap(params)
推荐阅读
- python - /search/ 'QuerySet' 对象的 AttributeError 没有属性 'facet'
- android - 读取包含链接的 XML 文件 (Android)
- c# - 数组中是否可以有不同颜色的矩形?
- nativescript - HThangEventCreate 失败?
- hyperledger-fabric - 是否可以根据 Hyperledger Fabric 中的实时流量来扩大节点数量?
- android - 我可以只将时间转换为时间戳吗?
- sql - 返回一个包含多列的表
- java - 如何制作一个在我按下时播放歌曲的按钮,一旦我再次按下它就会停止歌曲?
- python - PYTORCH支持的“torch.nn.CTCLoss”和torch_baidu_ctc支持的“CTCLoss”有区别吗?
- python - python中的process.pid在macOS mojave上给出错误的值