2011-01-07 74 views

回答

5

TreeMap將是正確的選擇。至於所有密鑰(或值)的收集,任何Map公開keySet()values()

編輯(用代碼標記回答你的問題)。假設你有一個Map<String, Object>

for (String key : map.keySet()) { 
    System.out.println(key); // prints the key 
    System.out.println(map.get(key)); // prints the value 
} 

您還可以使用entrySet()代替keySet()values()以便通過鍵 - >值對迭代。

5

TreeMap可能是您要找到的最接近的東西。

可以遍歷鍵調用TreeMap.keySet();並遍歷返回的設置:

// assume a TreeMap<String, String> called treeMap 
for(String key : treeMap.keySet()) 
{ 
    string value = treeMap[key]; 
} 

這將是等效的:

// assume a SortedDictionary called sortedDictionary 
foreach(var key in sortedDictionary.Keys) 
{ 
    var value = sortedDictionary[key]; 
} 



你也可以請嘗試以下操作:

// assume TreeMap<String, String> called treeMap 
for (Map.Entry<String, String> entry : treeMap.entrySet()) 
{ 
    String key = entry.getKey(); 
    String value = entry.getValue(); 
} 

這是等同於以下.NET代碼:

// assume SortedDictionary<string, string> called sortedDictionary 
foreach(KeyValuePair<string, string> kvp in sortedDictionary) 
{ 
    var key = kvp.Key; 
    var value = kvp.Value; 
} 
+1

treeMap [key]是語法糖,你不會在當前找到java版本。你應該堅持使用treeMap.get(key) – 2011-01-07 00:48:37

0

你需要的是爲SortedMap(TreeMap中)的entrySet()方法。

相關問題