【发布时间】:2022-01-21 09:35:26
【问题描述】:
使用 Java8/集合/
我想在集合中的地图中添加数据:
Map<String,Map<String,Double>> OuterMap=new LinkedHashMap<String,Map<String,Double>>();
内图:
Map<String,Double> InnerMap=new LinkedHashMap<String,Double>();
OuterMap.put("Str1",InnerMap);
OuterMap.put("Str2",InnerMap);
问题是我想检查 InnerMap 的键,它在 InnerMap 中可能会有所不同。
当我比较 InnerMap 的键时。 OuterMap 会覆盖地图的先前元素。
我想要这样的输出:
Str1={"SNP1"=0.3,"SNP2"=0.56,"SNP3"="0.76"} , Str2={"SNP1"="0.16","SNP2"=0.56,"SNP3"=0.78,"SNP4"=.56}
【问题讨论】:
-
不要使用同一个对象作为多个外部映射键的值?
-
正如@Shawn 所说,或者更清楚地说,每个内部映射都必须是 LinkedHashMap 的全新实例,否则您只是在各处引用同一个映射。
标签: java collections java-8