【发布时间】:2012-03-22 10:14:53
【问题描述】:
我在 TreeMap 中有一个 TreeMap。
TreeMap <String, TreeMap<String, Double>> x_probs_org = new TreeMap<String, TreeMap<String, Double>>();
但是当我用完全相同的定义制作另一个,然后复制第一个时:
x_probs.putAll(x_probs_org);
我注意到新的树形图不会复制所有内容。它正确复制所有字符串键,但仅复制值中的最后一个元素(TreeMap)。除了滚动整个第一个树状图然后将元素添加到新树状图之外,还有什么更简单的方法可以做到这一点?
我只需要一开始就具有相同的数据结构和相同的数据。我所做的是运行循环,通过它填充第一个树形图,然后简单地将下一个与它放在同一个循环中。这也不起作用:
// build tempMap up there...
x_probs_org.put(tokens[0], tempMap);
x_probs.put(tokens[0], tempMap);
x_probs 坚持丢失 x_probs_org 设法获取的数据。 “tempMap”是否会因填充一次而耗尽?
【问题讨论】: