gpt4 book ai didi

java - 此分配中无效的内容 : `Map mObj = new HashMap();` ?

转载 作者:搜寻专家 更新时间:2023-11-01 01:06:00 24 4
gpt4 key购买 nike

在 java 中,这个赋值有什么问题:

Map<String, Object> mObj = new HashMap<String, String[]>();

我得到:

error: incompatible types: HashMap<String,String[]> cannot be converted to Map<String,Object>

String[]是一个 Object ,那应该有效。如果我转换为未参数化的 Map像这样:Map<String, Object> mObj = (Map) new HashMap<String, String[]>(); ,它正在工作,但当然,我收到警告并且它很脏。

此外,我觉得我的第一份作业应该可行。

谢谢!

PS: 我不能简单地改变 new HashMap<String, String[]>();new HashMap<String, Object>();因为实际上,我调用了一个返回 Map<String, String[]>(); 的方法当然,我无法更改此方法。再次感谢。

最佳答案

错误是因为泛型不支持子类型化。 Number a = new Integer(5)是有效的情况。但是一旦你放入泛型,它就会出现编译错误 ArrayList<Number> a = new ArrayList<Integer>()不被允许。查看此链接是否有帮助 https://dzone.com/articles/5-things-you-should-know-about-java-generics了解有关泛型的一些指南。

关于java - 此分配中无效的内容 : `Map<String, Object> mObj = new HashMap<String, String[]>();` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34312977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com