地图放置不工作 Java
Map put not working Java
我有一个带有一些值的 Map,我需要将一个新条目放入其中,问题是将 "lost" 对象放入其中,而我只有新的 Key 放入其中。
这是代码
public void addSeries(SerieInterface serieObject)
{
Map<String, Object> series = this.getSeries();
if (series == null)
series = new HashMap<String, Object>();
series.put(serieObject.getSerie_instance(), serieObject);
this.setSeries(series);
}
"series" 是现有的映射(是一个 BasicDBObject,它扩展了 LinkedHashMap),我需要在其中添加 serieObject 对象(一个具有两个扩展 JSONObject 的 String 字段的对象);
在 "put" 命令之后,我在地图中有旧的两个对象和只有 "key" 的新对象
(我只有 {"Key" : { } } )
(我在调试中检查了 serieObject,它有所有字段)
有什么原因的建议吗?为什么 Map 的 Object "Value" 丢失了?
我没有任何类型的异常,我只是失去了价值...
感谢您的帮助,抱歉我的英语不完美
Luca,请在测试结束时把你的结构描述的更清楚一些,{"Key" : { } }
没什么意思,{}值是什么Object?
看着这个 series.put(serieObject.getSerie_instance(), serieObject);
serieObject 似乎至少有那个名字很奇怪的 getSerie_instance 键而且它不是空的。
此外,还有一些其他的事情:
1) this.getSeries() ,如果这个 Map 是 class 属性 直接使用它,不要使用 setter/getter 如果你只是 return 值。
2) if (series == null),为什么不在class的构造函数中初始化这个Map?这样更干净。
我有一个带有一些值的 Map,我需要将一个新条目放入其中,问题是将 "lost" 对象放入其中,而我只有新的 Key 放入其中。
这是代码
public void addSeries(SerieInterface serieObject)
{
Map<String, Object> series = this.getSeries();
if (series == null)
series = new HashMap<String, Object>();
series.put(serieObject.getSerie_instance(), serieObject);
this.setSeries(series);
}
"series" 是现有的映射(是一个 BasicDBObject,它扩展了 LinkedHashMap),我需要在其中添加 serieObject 对象(一个具有两个扩展 JSONObject 的 String 字段的对象); 在 "put" 命令之后,我在地图中有旧的两个对象和只有 "key" 的新对象 (我只有 {"Key" : { } } ) (我在调试中检查了 serieObject,它有所有字段)
有什么原因的建议吗?为什么 Map 的 Object "Value" 丢失了? 我没有任何类型的异常,我只是失去了价值...
感谢您的帮助,抱歉我的英语不完美
Luca,请在测试结束时把你的结构描述的更清楚一些,{"Key" : { } }
没什么意思,{}值是什么Object?
看着这个 series.put(serieObject.getSerie_instance(), serieObject);
serieObject 似乎至少有那个名字很奇怪的 getSerie_instance 键而且它不是空的。
此外,还有一些其他的事情:
1) this.getSeries() ,如果这个 Map 是 class 属性 直接使用它,不要使用 setter/getter 如果你只是 return 值。
2) if (series == null),为什么不在class的构造函数中初始化这个Map?这样更干净。