【发布时间】:2017-10-19 16:18:30
【问题描述】:
我仍在习惯 Java 泛型,但我目前正在更新在泛型之前编写的应用程序以使用最新版本的 java。
问题是代码没有考虑到类型安全!
我们有一大堆地图,基本上包含各种对象类型,包括字符串。例如:
Map map = new HashMap();
map.put("key1", "String1");
map.put("key2", new Date());
map.put("key3", new CutsomClass());
现在我仍在努力寻找处理这些问题的最佳方法,而无需重构大量代码。目前无法进行重构。
目前我看不到 Map<String, Object> 之后的任何内容,尽管 Map<String, ? super Object> 有效,但我认为它本质上是一样的?
【问题讨论】:
-
Map<String, Object> map = new HashMap<>(); -
Map<Object, Object> map = new HashMap<>()如果键和值都包含各种对象类型。 -
谢谢小伙子...我原来的帖子遗漏了一些代码。这就是我基本上一直在做的事情......只是感觉不“正确”
-
在我看来设计很糟糕。这应该是一个新类,而不是地图,其中包含各种项目的字段。
-
@RameshKC,与 OP 的香草 Map 相比,Map
标签: java dictionary generics hashmap