1
的所有值我有以下簽名的Java:比較嵌套HashMap的
Map<Key1, Map<Key2, List<Double>>>
我需要添加跨內部嵌套地圖的所有鍵列表上的同一指標的HashMap中。我似乎無法找到任何有效的方法,因爲我不會事先知道列表的大小。直到現在,最好的辦法是將所有內部列表轉換爲數組列表,然後使用迭代器添加。有沒有更有效的方法來做到這一點?
的所有值我有以下簽名的Java:比較嵌套HashMap的
Map<Key1, Map<Key2, List<Double>>>
我需要添加跨內部嵌套地圖的所有鍵列表上的同一指標的HashMap中。我似乎無法找到任何有效的方法,因爲我不會事先知道列表的大小。直到現在,最好的辦法是將所有內部列表轉換爲數組列表,然後使用迭代器添加。有沒有更有效的方法來做到這一點?
Double sumOfSameIndex =0.0;
Map<Key1, Map<Key2, List<Double>>> map = new LinkedHashMap<Key1, Map<Key2, List<Double>>>();
Iterator<Map.Entry<Key1, Map<Key2, List<Double>>>> outerIterator = map.entrySet().iterator();
while(outerIterator.hasNext()){
Map.Entry<Key1, Map<Key2, List<Double>>> entryForOuterMap= outerIterator.next();
Iterator<Map.Entry<Key2, List<Double>>> innerIterator = entryForOuterMap.getValue().entrySet().iterator();
while(innerIterator.hasNext()){
Map.Entry<Key2, List<Double>> entryForInnerMap = innerIterator.next();
// entryForInnerMap.getValue() returns List<Double>
List<Double> getList= entryForInnerMap.getValue();
// REPLACE THIS x WITH the INDEX OF ARRAY YOU WANT TO SUM
sumOfSameIndex = sumOfSameIndex + getList.get (x);
}
}
「在內部嵌套地圖的所有按鍵上的列表中添加相同的索引」 - 您是用相同的值填充最裏面的列表嗎?你能舉個例子嗎?這有點不清楚。 – Makoto
這些值可能不同,但需要添加相同索引處的值。例如,對於Map>,Map >'我必須添加0.1和0.3。希望這件事清理一下。 –
learningTheRopes
@learningTheRopes你的問題不清楚。請在問題關閉前發佈一些示例輸入和輸出。 – CKing