我有兩個HashMap
,第一個有3149條記錄,第二個5440條記錄,當我合併它們時,結果尺寸小於3149 + 5440。爲什麼以及如何解決它?爲什麼結合兩個hashMap的結果不是corecct?
Map<String,String> bigMap = new HashMap<String, String>();
bigMap.putAll(hashMap1);
bigMap.putAll(hashMap2);
int j = 0;
for (Map.Entry<String, String> entry : bigMap.entrySet()) {
System.out.println(j++);
}
我也cheched與此代碼,以確保如果有一些共同的關鍵。
for (Map.Entry<String, String> entry : readCsv(hashMap1).entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
if(entry.getKey().equals(hashMap2).get(key))){
System.out.println(i++);
}
}
沒有你的代碼的其餘部分就很難說了。你對這兩張地圖的記錄數是否積極? – mcfinnigan 2012-02-01 10:12:04
小於3149 + 5440,或小於3149?如果'hashMap1'和'hashMap2'共享密鑰,則只有這些密鑰的'hashMap2'值會出現在'bigMap'中。 – Vlad 2012-02-01 10:12:39
也許是因爲hashMap1和hashMap2有一些共同的密鑰? – Pengtuzi 2012-02-01 10:12:49