我有一张'String as key& amp; String列表作为值'。我想检查键值对,并希望地图自我查找其新值并创建所有组合的完整路径。参考此图片
我希望这张图片给出一个清晰的想法,因为我无法用语言解释这一点。请帮我解决这个问题。提前谢谢。
答案 0 :(得分:0)
快速而肮脏的解决方案:
Map<String, List<String>> sndMap = new Map<String, List<String>>();
// Go throuch first map and copy all keys to second map
for (String key : firstMap.keySet()) {
if (!sndMap.containsKey(key)) {
sndMap.put(key, new List<String>());
}
List<String> tmp = sndMap.get(key);
tmp.add(firstMap.get(key).get(0));
sndMap.put(key, tmp);
}
// Go throuch all List of values in first map and check if a value is a key in the second map.
for (List<String> values : firstMap.values()) {
for (String s : values) {
if (sndMap.containsKey(s)) {
List<String> tmpList = sndMap.get(s);
tmpList.add(s);
sndMap.put(s, tmpList);
}
}
}