List<Dictionary> DictionaryList= new ArrayList<Dictionary>();
我創建了ArrayList對象,我需要用鍵存儲多個名稱,並且想要顯示名稱和鍵。我該怎麼做。請幫我ArrayList對象存儲多個值
List<Dictionary> DictionaryList= new ArrayList<Dictionary>();
我創建了ArrayList對象,我需要用鍵存儲多個名稱,並且想要顯示名稱和鍵。我該怎麼做。請幫我ArrayList對象存儲多個值
我認爲你正在尋找的對象是地圖
考慮java 7的HashMap
HashMap<String,Value> map = new HashMap<String,Value>();
添加一個鍵值對......最關鍵的是你正在使用的價值無論
map.put("name1",23);
現在讓我們來訪問這些條目的一個
map.get("name1"); // returns 23
使用參數化的類很簡單一旦你掌握了它的一切。 See the Docs
請確保您使用對象來指定對
所以用這個例子中使用整型()的數字不是整數
我建議HashMap中通過普通地圖。 HashMap實現了提供常量.put()和.get()操作的散列函數。
你對「常規映射」有什麼意義 - 你指的是TreeMap嗎?因爲Map只是一個界面。 –
您應該考慮使用Map<K,V>
來代替。
考慮你需要一個String
到String
映射,一個Map
可以實例爲:
Map<String, String> mapOfNames = new HashMap<String, String>();
的插入是那麼容易,因爲:
mapOfNames.put(key, name);
和信息檢索:
String name = mapOfNames.get(key);
現在考慮可能會有多個與相同密鑰關聯的數值,則必須將Map
修改爲HashMap<String, List<String>>
。也就是說,每個key
將對應於list of values
。
所以定義隨後將是這樣的形式:
Map<String, List<String>> mapOfNames = new HashMap<String, List<String>>();
插入:
mapOfNames.get(key).add(name);
檢索:
List<String> retrievedNamesForKey = mapOfNames.get(key);
更多HashMaps
可以在這裏找到:HashMap (Java Platform SE 7)
爲什麼你不使用地圖來存儲鍵值對?..爲什麼地圖/字典的數組列表? – TheLostMind
http://docs.oracle.com/javase/tutorial/collections/interfaces/map.html? – assylias
你只需要使用正確的數據結構;) – leigero