【问题标题】:Difference between generics in Map function Map<Object,String> and Map<String,Object>Map 函数 Map<Object,String> 和 Map<String,Object> 中泛型的区别
【发布时间】:2020-04-24 21:43:08
【问题描述】:

有人能分辨出Map&lt;Object, String&gt; 和Map&lt;String, Object&gt; 之间的区别吗?

我得到了两个相同的输出..

【问题讨论】:

  • 我从不知道 Java 有类似“-Map”的东西。谢谢你,斯里。 :)
  • 好吧,抱歉,现在请看图片
  • 尝试在该 Map 上执行操作以查看两种类型之间的区别。如果您尝试访问值,您会看到 Map&lt;String, Object&gt; 具有 Object 类型的值,而另一个具有 String 类型的值
  • 请注意 oMapper.convertValue 行下方的黄色波浪线 - 这是因为未经检查的演员表。此代码不是类型安全的。
  • thanks@user 和 @Andy Turner - 即使输出即将到来,你能帮我如何避免该错误

标签: java dictionary


【解决方案1】:

在这里,您正在使用 Jackson objectMapper.convert 方法将您的对象转换为 Map。 所以当你使用 地图 它正在地图中创建 3 个项目,其值为对象

在这种情况下,当您尝试从地图中获取技能时,它将作为对象返回,您可以将其类型转换为列表。

但万一 地图 这里的值存储为字符串,这意味着当您尝试从地图中获取技能时,它将作为字符串对象返回。现在,当您尝试将其强制转换为列表时..它会抛出异常

【讨论】:

  • 非常感谢,这些转换对我来说有点混乱,请您提供任何文档。那会很有帮助。 TiA 斯里兰卡
猜你喜欢
  • 1970-01-01
  • 2018-09-22
  • 2020-08-01
  • 1970-01-01
  • 2018-03-22
  • 1970-01-01
  • 2013-05-24
  • 2014-01-29
  • 1970-01-01
相关资源
最近更新 更多