我正在将字符串添加到HashMap<String, ChartSeries>
,但不会添加所有字符串。但是,它确实更改了哈希图的大小整数:
如您所见,它显示为size:6
,但是当您查看表格时,它仅包含4个对象。
这是我的代码:
for (CaseTypeActivationAmount CTAM : caseTypeActivationAmounts) {
ChartSeries cs;
if (!caseTypes.containsKey(CTAM.getOmschrijving())) {
if (CTAM.getOmschrijving() != null) {
cs = new ChartSeries(CTAM.getOmschrijving());
} else {
cs = new ChartSeries(" ");
}
caseTypes.put(CTAM.getOmschrijving(), cs);
} else {
cs = caseTypes.get(CTAM.getOmschrijving());
}
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy");
cs.set(dateFormat.format(CTAM.getDate()), CTAM.getAmount());
}
我想念什么吗?
最佳答案
当您查看表格时,它仅包含4个对象。
该表确实包含六个对象。但是,由于哈希冲突,它仅将它们保存在四个separate chains中。
您可以看到调试器中正在发生的情况:打开每个节点的值,然后检查下一个值。您将发现(1)六个节点中的两个具有第二项,或者(2)六个节点中的一个在其链中具有两个附加项,以计算六个对象的总数。