gpt4 book ai didi

java - 在 HashMap 列表中搜索键值对

转载 作者:行者123 更新时间:2023-12-01 15:52:05 25 4
gpt4 key购买 nike

我正在读取两个包含一组属性的 csv 文件

File 1 attributes = name, class, rollno,   
File 2 attributes = rollno, city,town

我需要匹配这两个文件,对于每个匹配的 rollno,我必须将文件 2 属性附加到文件 1 中,并以以下格式创建一个 csv 文件rollno,名称,类(class),城市,城镇

到目前为止,我已成功将 File1 和 file2 值读取到该类型的链接 HashMap 列表中。

List<Map<Object, Object>> _students = new ArrayList<Map<Object, Object>>();

我无法弄清楚前进的步骤。

如何在第一个文件的列表映射中搜索第二个列表映射中包含的卷并将其附加到第一个列表映射中?

然后按照指定的顺序将其打印到 csv 文件(我能够按照在 map 中插入的顺序迭代并打印所有值)

最佳答案

我将通过读取第一个文件并将值存储在 HashMap 中来解决这个问题。然后附加到该 HashMap 键是角色编号,值是其他值的列表。

Map<String, List<String>> map = new HashMap<String, List<String>>()

Pseudocode:

for (List<String> line : file1.lines) {
List curLine = new LinkedList();
curLine.add(line.get(0));
curLine.add(line.get(1));

map.put(line.get(2),curLine)
}

for (List<String> line : file2.lines) {
String key = line.get(0);
String list = map.get(key);
if (list != null)
{
list.add(line.get(1));
list.add(line.get(2));
}

map.put(key,list); // probably not necessary as you change the reference that is already in the map, but I'm not sure

}

关于java - 在 HashMap 列表中搜索键值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5818900/

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