【发布时间】:2021-07-12 18:41:09
【问题描述】:
我有一个字符串映射和字符串列表, 这是我的字符串
Name|A|B|D
Last|C|F|G|H
Map<String , List<String>> edited = new LinkedHashMap<>();
for(String s : data){
String[] split = s.split("\\|");
for(int i = 1; i < split.length; i++){
partValue.add(split[i]);
}
edited.put(split[0], partValue);
partValue.clear();
}
当第二个for循环后partValue被清除时,地图列表值大小也变为0。我不希望地图列表值受到影响。
我正在尝试存储
名称 -> ["A", "B", "D"]
最后 -> ["C", "F", "G", "H"]
【问题讨论】:
-
你在哪里实例化
partValue?将其带入 for 循环而不是清除 -
不要重复使用
partValue。为每个项目创建一个新列表。 -
一般而言,不要重复使用不应该是“同一事物”的对象。
标签: java