gpt4 book ai didi

java - 将列表放入 map 中

转载 作者:行者123 更新时间:2023-12-01 19:28:57 27 4
gpt4 key购买 nike

我不知道为什么在我的 map 中的每个值中都放置相同的最后一条记录。 key 没问题,但在每次迭代中,我的列表都会放入 map 中的每个记录中。我不明白为什么..

有人可以帮忙吗?

    HashMap<Long, LinesEntity> xlsMapped = new HashMap<>();
MapEntity mapEntity = new MapEntity();

LinesEntity linesEntity = new LinesEntity();
ArrayList<String> list = new ArrayList<>();

//read first line
String line = br.readLine();
String array[];

long mapKey = 0;

while (line != null) {

array = line.split(",");

list.clear();
for (String cell : array) {

list.add(cell);
}
line = br.readLine();

linesEntity.setSingleLine(list);

dataService.saveOne(linesEntity);

xlsMapped.put(mapKey, linesEntity);
mapKey++;

}

// mapEntity.setMapa(xlsMapped);
// dataService.save(mapEntity);

}

最佳答案

我认为您需要为每个循环创建新的 linesEntitylist 对象实例:

while (line != null) {

linesEntity = new LinesEntity(); // create a new LinesEntity for this loop execution
list = new ArrayList()

array = line.split(",");

这意味着从技术上讲,您不需要在顶部创建它们,只需声明它们即可:

LinesEntity linesEntity;
ArrayList<String> list;

关于java - 将列表放入 map 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60383563/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com