我是 Java 新手。我一直在使用哈希表读取具有不同键和值的不同数据。
我在哈希表中有一个哈希表,我想将其拆分为两个哈希表。
Hashtable<String, Hashtable<String, Double>> sData;
想分成这样的东西:
Hashtable<String, Double> innerData;
Hashtable<String, String> outerData;
我什至不确定这是否可能,因为我正在使用外部哈希表并将值更改为字符串,而不是另一个哈希表。我想我还是会问
最佳答案
Hashtable<String, Double> innerData;
Hashtable<String, List<String>> outerData; // or use some multimap library
for(String key:sData.keys()){
List<String> outerlist = new List<String>();
for(String key2:outerData.get(key).keys()){
outerlist.add(key2);
innerData.put(key2,outerData.get(key).get(key2))
}
outerData.put(key,outerlist)
}
或者如果你想避免交叉哈希数据丢失,你需要新的类
Hashtable<Pair<String,String>, Double> innerData;
Hashtable<String, List<Pair<String,String>>> outerData;
其中 Pair 是代表嵌套键的类。您也可以只连接字符串,但如果您想向后工作,这会更困惑。
关于java - 将哈希表中的哈希表拆分为两个单独的哈希表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12031460/