我有一个HashMap
基本上尝试根据对象名称作为键来存储对象的方法。但是,当对象第一次不存在时,HashMap
而不是重新调整我 anull
它返回一个object
. 结果,它永远不会创建一个新对象,也永远不会将它放入HashMap
- 我希望它返回null
。
这是我的代码...
private static Map<String, SObj> MComponentCache = Collections.synchronizedMap(new HashMap<String, Sobj>());
static SObj getSObj(String cName) {
SObj cmp = null;
String pKey = "Component:" + cName.intern();
cmp = MComponentCache.get(cName);
synchronized (pKey){
if (cmp == null){
cmp = new SObj(cName);
MComponentCache.put(cName, cmp);
}
}
return cmp;
}
谁能帮我纠正这个问题。