我想合併兩個哈希映射。合併兩個哈希映射Android
我可以使用map1.putAll(MAP2);但我不想重寫密鑰,因爲他們會有衝突的密鑰。
所以在每個地圖的鑰匙會是這樣
word1 word1
word2 word2
word3 word3
,當我將它們合併,我想:
word1
word2
word3
word4
word5
word6
它可以只覆蓋鍵,aslong的關鍵是增量並使用第一個關鍵文本,即讀取其中一對並提取「單詞」,這樣每個單詞都將是word1 word2。
但另外一點我想在移動環境,我能做些什麼,而不必忍受加載屏幕,甚至可以勝任的。
所以作爲首發,我想:
HashMap<String, Object> hm1 = new HashMap<String, Object>();
hm1.put("key1", "a");
hm1.put("key2", "a");
hm1.put("key3", "a");
HashMap<String, Object> hm2 = new HashMap<String, Object>();
hm2.put("key1", "1");
hm2.put("key2", "2");
hm2.put("key3", "3");
HashMap<String, Object> newHM = new HashMap<String, Object>();
String keyWord = "";
for (String s: hm1.keySet()) {
keyWord = s;
break;
}
int count = 0;
for (Object o : hm1.values()) {
newHM.put(keyWord+count, o);
}
for (Object o : hm2.values()) {
newHM.put(keyWord+count, o);
}
但我想知道,如何高效這是什麼?它看起來是正確的,有沒有更好的方法來做到這一點?我不想不必要地使用額外對象
字符串關鍵字= 「」; (String s:hm1.keySet()){ keyWord = s; 休息; } 這樣做有什麼意義呢?它總是會設置關鍵字來HM1 – 2010-10-09 20:10:12
第一密鑰的理念是,要檢索已創建地圖的一個關鍵,我忘了,雖然從中取出數,所以每個按鍵會key11,KEY12,kat13。所以我應該用一個子串來解決這個問題。只要查看列表回答第一tho – Blundell 2010-10-09 21:26:39