清除列表还会清除Java中列表的先前记录

时间:2017-08-16 06:46:29

标签: java

我有一个数据值列表,我将其插入到HashMap中以供请求读取,我将这些数据输入到JSP中的表中。我在这里遇到的问题是我会成功将数据添加到相关列表中,然后将其添加到hashmap中,但是一旦我清除列表以检索新年的新数据,它也会清除记录的值。 hashmap。如何阻止动态调整我的hashmap?谢谢你的时间。

这是我的代码,虽然我不认为这是我缺乏知识的问题。

<link />

1 个答案:

答案 0 :(得分:1)

您将继续将对相同列表的引用插入到地图中,而不是每次都创建新列表。要修复,请将列表声明移到for循环中:

for (MyDataType dataType : dataList) {
    List<BigDecimal> startCus = new ArrayList<>();
    List<BigDecimal> newCus = new ArrayList<>();
    List<BigDecimal> endCus = new ArrayList<>();
    List<BigDecimal> thisYearCus = new ArrayList<>();
    List<BigDecimal> lostCus = new ArrayList<>();
    List<BigDecimal> rateL = new ArrayList<>();
    ...