【发布时间】:2015-01-08 07:47:09
【问题描述】:
我使用 Hashmap 作为我的内存缓存。所以基本上,这就是我所拥有的:
private static final Map<String, Object> lookup = new HashMap<String, Object>();
public static Object get(CacheHelper key) {
return lookup.get(key.getId());
}
public static void store(CacheHelper key, Object value) {
lookup.put(key.getId(), value);
}
没关系。但是对于我从地图中“获取”的每个对象,我都必须进行投射,这非常难看。 我想把 ArrayList 和许多其他不同的东西放进去。
有人知道其他类型安全的解决方案吗?
(当然,我可以为每种类型创建一个 getter 和 setter,但这是唯一的解决方案吗?
那么,有没有更好的方法来创建内存缓存,或者有人知道如何包装 hashmap 以更安全?
【问题讨论】:
-
你试图在这个缓存中填充多少不同类型的对象?
-
让我们假设大约 15 种类型。这通常是正常的
-
正如托马斯在下面提到的那样,当涉及到这些类型时,没有共同点?
-
不,只是父对象:对象
标签: java arraylist hashmap typesafe