जावा प्रोग्राम वैल्यू बाय मैप को सॉर्ट करने के लिए

इस कार्यक्रम में, आप जावा में मानों द्वारा दिए गए नक्शे को क्रमबद्ध करना सीखेंगे।

इस उदाहरण को समझने के लिए, आपको निम्नलिखित जावा प्रोग्रामिंग विषयों का ज्ञान होना चाहिए:

  • जावा मैप इंटरफेस
  • जावा लिंक्डहाशपैप

उदाहरण: मानों द्वारा एक मानचित्र क्रमित करें

 import java.util.*; public class Main ( public static void main(String() args) ( // create a map and store elements to it LinkedHashMap capitals = new LinkedHashMap(); capitals.put("Nepal", "Kathmandu"); capitals.put("India", "New Delhi"); capitals.put("United States", "Washington"); capitals.put("England", "London"); capitals.put("Australia", "Canberra"); // call the sortMap() method to sort the map Map result = sortMap(capitals); for (Map.Entry entry : result.entrySet()) ( System.out.print("Key: " + entry.getKey()); System.out.println(" Value: " + entry.getValue()); ) ) public static LinkedHashMap sortMap(LinkedHashMap map) ( List  capitalList = new LinkedList(map.entrySet()); // call the sort() method of Collections Collections.sort(capitalList, (l1, l2) -> l1.getValue().compareTo(l2.getValue())); // create a new map LinkedHashMap result = new LinkedHashMap(); // get entry from list to the map for (Map.Entry entry : capitalList) ( result.put(entry.getKey(), entry.getValue()); ) return result; ) ) 

आउटपुट

 कुंजी: ऑस्ट्रेलिया मूल्य: कैनबरा कुंजी: नेपाल मूल्य: काठमांडू कुंजी: इंग्लैंड मूल्य: लंदन कुंजी: भारत मूल्य: नई दिल्ली कुंजी: संयुक्त राज्य अमेरिका मूल्य: वाशिंगटन

उपरोक्त कार्यक्रम में, हमने एक LinkedHashMapनामित राजधानियाँ बनाई हैं । नक्शा देशों और उनकी संबंधित राजधानियों को संग्रहीत करता है।

यहाँ, हमने एक sortMap()विधि बनाई है जो मानचित्र लेता है और क्रमबद्ध मानचित्र को वापस करता है।

विधि के अंदर, हमने सबसे पहले मानचित्र की राजधानियों से कैपिटलिस्ट नामक एक सूची बनाई। फिर हम सूची के तत्वों को क्रमबद्ध करने की sort()विधि का उपयोग करते हैं Collections

sort(): विधि दो पैरामीटर लेता सूची क्रमबद्ध करना और एक तुलनित्र । हमारे मामले में, तुलनित्र एक लंबोदर अभिव्यक्ति है।

 (l1, l2) -> l1.getValue().compareTo(l2.getValue())

यहाँ, लंबोदर अभिव्यक्ति सूची के दो आसन्न तत्व (l1 और l2) को लेती है। तब इसने दो मानों की तुलना करने के getValue()लिए मूल्य और compareTo()विधि प्राप्त करने के लिए विधि का उपयोग किया ।

ऑपरेशन के बाद, हमें क्रमबद्ध सूची पूंजीवादी मिलती है। फिर, हम सूची को LinkedHashMapनामांकित परिणाम में परिवर्तित करते हैं और इसे वापस करते हैं।

main()विधि में वापस , हम नक्शे में प्रत्येक आइटम के माध्यम से लूप करते हैं और इसकी कुंजी और मूल्य प्रिंट करते हैं।

दिलचस्प लेख...