2011-01-07 13 views
7

यदि .NET में SortedDictionary ऑब्जेक्ट है ... जावा में यह क्या है, कृपया? मुझे जावा कोड में Enumeration (तत्वों के) को पुनर्प्राप्त करने में भी सक्षम होना चाहिए .. इसलिए मैं बस सभी चाबियों पर फिर से सक्रिय कर सकता हूं।जावा में .NET SortedDictionary के बराबर क्या है?

मुझे लगता है कि यह TreeMap है? लेकिन मुझे नहीं लगता कि Enumeration है जो खुलासा हुआ है?

कोई विचार?

+0

एक वृक्ष मैप पर पुनरावृत्ति कैसे करें http://stackoverflow.com/questions/1318980/how-to-iterate-over-a-treemap – Casey

उत्तर

5

TreeMap सही विकल्प होगा। संग्रह सभी चाबियों (या मानों) के लिए, MapkeySet() और 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 SortedDictionary called sortedDictionary 
foreach(var key in sortedDictionary.Keys) 
{ 
    var value = sortedDictionary[key]; 
} 



तुम भी किए जा सकेंगे:

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

यह की बराबर होगा निम्न का प्रयास करें:

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

निम्नलिखित में से कौन नेट कोड के बराबर है:

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

वृक्ष मैप [कुंजी] एक वाक्यविन्यास चीनी है जिसे आप वर्तमान में नहीं पाएंगे जावा का संस्करण आपको treeMap.get (कुंजी) के साथ रहना चाहिए –

0

आपको क्या चाहिए SortedMap (ट्री-मैप) के entrySet() तरीका है।