2011-10-16 23 views
-1

我有一個ArrayList<Hashtable<String, String>>Android從列表中獲取datd

這是散列表。

Hashtable<String, String> table = new Hashtable<String, String>(); 

該列表將包含許多哈希表。我需要遍歷列表並獲取每個散列表的第一個索引處的元素。這可以在一行代碼中完成嗎?我想使用一個變量,而不是通過使用許多循環和變量使其變得複雜。希望我清楚。 plz幫助。

回答

1

您將不得不迭代列表,並且在每次迭代中,您必須在第一個索引處獲取元素。 但是,由於不能保證Hashtable或HashMap中元素的順序,因此我不清楚你的意思是「在Hashtable的第一個索引處的元素」。不過,如果您正在查找映射到特定鍵的值,那麼這很有意義。

int i = 0; 
for (HashMap<String,String> map : listOfMaps) 
{ 
    array[ i ] = System.out.println(map.get("name")); 
    i++; 
} 

或:

for (int i = 0; i < listOfMaps.length; i++) 
{ 
    array[ i ] = map.get("name"); 
} 
+0

對不起那個。我會清楚地打電話給他。我有可用的名單。我需要從列表中的每個散列表中獲取關鍵字「name」的值。 – Droidme

+0

我已經相應地更新了僞代碼。你必須在循環內做什麼,當然取決於你想要做什麼,以映射到「名稱」的值 - 可能將它們存儲在數據結構中,以便在其他地方進一步處理。 –

+0

謝謝你。我能夠獲得價值。但是,如何在每次訪問之後將值存儲在數組中。 array [?] = map.get(key)。問號應該出現在什麼地方(數組[?])。 – Droidme