आप NavigableMap
(TreeMap
NavigableMap
) का उपयोग कर सकते हैं, जो नेविगेशन क्षमताओं के साथ SortedMap
है।
NavigableMap#descendingMap()
इस मानचित्र में निहित मैपिंग के एक रिवर्स ऑर्डर व्यू (प्रतिलिपि नहीं) देता है।
उदाहरण:
NavigableMap<String, String> items = new TreeMap<String, String>();
items.put("B", "2");
items.put("A", "1");
items.put("C", "3");
for (Map.Entry<String, String> e : items.entrySet()) {
System.out.println(e);
}
// gives
// A=1
// B=2
// C=3
for (Map.Entry<String, String> e : items.descendingMap().entrySet()) {
System.out.println(e);
}
// gives
// C=3
// B=2
// A=1
नोट: यह जवाब मान्य है अगर आप अपने Map
में चाबियों का प्राकृतिक आदेश के बारे में परवाह। यदि आप सम्मिलन आदेश या एक्सेस ऑर्डरिंग की परवाह करते हैं, तो LinkedHashMap
पर एक नज़र डालें।
नोट 2: आपके प्रश्न में, आपने HashMap
का उपयोग किया था। कृपया ध्यान दें कि HashMap
अपने तत्वों के लिए किसी भी आदेश की गारंटी नहीं देता है। असल में, यह गारंटी भी नहीं देता कि आदेश समय के साथ स्थिर रहेगा। आगे संदर्भों के लिए HashMap
के javadoc का पहला पैराग्राफ देखें।
अंतिम और सबसे पहले शब्द इंगित करने लगते हैं। अधिकांश उत्तरों में मुझे लगता है कि अंतिम और प्रथम अर्थपूर्ण हैं (उदा। सी ए से बड़ा है और इस प्रकार अंतिम)। ऑर्डरर्ड मैप्स आपकी मदद नहीं करेगा अगर आपको सम्मिलन समय ऑर्डरिंग की आवश्यकता है और कुंजी में सम्मिलन टाइमस्टैम्प नहीं है। – extraneon
'हैश मैप' अपने तत्वों के लिए किसी ऑर्डर की गारंटी नहीं देता है। विशेष रूप से, यह गारंटी नहीं देता है कि आदेश समय के साथ स्थिर रहता है। इस प्रकार, 'हैश मैप' वह नहीं है जो आप चाहते हैं यदि आपको किसी भी प्रकार का ऑर्डर बनाए रखना है। – barjak