जावा में मैप इंटरफेस कैसे लागू करें?



जावा मैप इंटेफेस पर यह लेख आपको यह समझने में मदद करेगा कि जावा में मैप कैसे काम करता है और आपको विभिन्न वर्गों से परिचित कराता है जो मैप इंटरफेस को लागू करते हैं

जावा में सबसे दिलचस्प विषयों में से एक नक्शा इंटरफ़ेस है जोएक कुंजी और एक मूल्य के बीच मानचित्रण का प्रतिनिधित्व करता है।अक्सर इसका उप-प्रकार होना गलत समझा जाता है जावा में इंटरफ़ेस।जावा मैप इंटरफेस पर यह लेख आपको समझने और मास्टर करने में मदद करेगा कि मैप किस तरह से काम करता है ।

नीचे सूचीबद्ध विषय इस लेख में शामिल हैं:





जावा मैप इंटरफेस

जावा में एक नक्शा एक है वस्तु यह मान मानों के लिए मैप करता है और तेज़ लुकअप के लिए डिज़ाइन किया गया है। डेटा को कुंजी-मूल्य जोड़े में संग्रहीत किया जाता है और प्रत्येक कुंजी अद्वितीय होती है। मान के लिए प्रत्येक मुख्य मानचित्र इसलिए नाम मानचित्र। इन की-वैल्यू पेयर को मैप एंट्री कहा जाता है।

जावा में नक्शे - जावा मानचित्र इंटरफ़ेस - एडुर्का



में , java.util.Map एक जिसमें एक कुंजी के आधार पर तत्वों के सम्मिलन, हटाने और पुनर्प्राप्ति के लिए विधि हस्ताक्षर शामिल हैं। इस तरह के तरीकों के साथ, यह कुंजी-मूल्य एसोसिएशन मैपिंग जैसे शब्दकोशों के लिए उपयोग करने के लिए एक आदर्श उपकरण है।

मानचित्र इंटरफ़ेस के लक्षण

  • मानचित्र इंटरफ़ेस संग्रह इंटरफ़ेस का सही उपप्रकार नहीं है, इसलिए,इसकी विशेषताएँ और व्यवहार संग्रह के बाकी हिस्सों से अलग हैं।
  • यह प्रदान करता हैतीन संग्रह विचार - कुंजी का सेट, कुंजी-मूल्य मैपिंग और मूल्यों का संग्रह।
  • सेवा मेरेनक्शाडुप्लिकेट कुंजियाँ नहीं हो सकती हैं और प्रत्येक कुंजी अधिकतम मूल्य पर मैप कर सकती है। कुछ कार्यान्वयन शून्य कुंजी और अशक्त मूल्य की अनुमति देते हैं () HashMap और LinkedHashMap ) लेकिन कुछ नहीं करता है () ट्रीपॉपर)।
  • मैप इंटरफ़ेस, मैपिंग के आदेश की गारंटी नहीं देता है, हालांकि, यह कार्यान्वयन पर निर्भर करता है। उदाहरण के लिए, हैश मैप मैपिंग के आदेश की गारंटी नहीं है लेकिन ट्रीपैप कर देता है।
  • AbstractMap वर्ग जावा मानचित्र इंटरफ़ेस और मानचित्र कंक्रीट के एक कंकाल कार्यान्वयन प्रदान करता है कक्षाएं AbstractMap वर्ग का विस्तार करें और आवश्यक तरीकों को लागू करें।

अब जब आपको इस बात का अंदाजा हो गया है कि मैप इंटरफेस क्या है आगे बढ़ने दें, जावा मैप के पदानुक्रम की जाँच करें।

जावा मानचित्र पदानुक्रम

मानचित्र में जावा को लागू करने वाले दो इंटरफेस हैं: मानचित्र और क्रमबद्ध मानचित्र। और जावा में मैप के लोकप्रिय कार्यान्वयन कक्षाएं हैं HashMap, TreeMap , तथा LinkedHashMap. जावा मैप का पदानुक्रम नीचे दिया गया है:



इससे पहले कि हम ऊपर बताए गए जावा मैप इंटरफेस के तीन कार्यान्वयन वर्गों की जाँच करें, यहाँ कुछ सामान्य विधियाँ दी गई हैं, जिन्हें आप मानचित्र के साथ काम करते समय देख सकते हैं।

जावा मैप इंटरफेस में तरीके

तरीके

विवरण

सार्वजनिक रखा (वस्तु कुंजी, वस्तु मूल्य)यह विधि नक्शे में एक प्रविष्टि सम्मिलित करती है
सह लोकशून्य putAll (मानचित्र मानचित्र)यह विधि इस नक्शे में निर्दिष्ट मानचित्र सम्मिलित करती है
सार्वजनिक ऑब्जेक्ट हटाएं (ऑब्जेक्ट कुंजी)इसका उपयोग निर्दिष्ट कुंजी के लिए एक प्रविष्टि को हटाने के लिए किया जाता है
सार्वजनिक सेट कीसेट ()यह सभी कीज युक्त सेट दृश्य लौटाता है
सार्वजनिक सेट एंट्रीसेट ()यह सभी कुंजी और मान वाले सेट दृश्य देता है
शून्य स्पष्ट ()इसका उपयोग मानचित्र को रीसेट करने के लिए किया जाता है
सार्वजनिक शून्य putIfAbsent (K कुंजी, V मान)यह मानचित्र में निर्दिष्ट कुंजी के साथ निर्दिष्ट मान को सम्मिलित करता है केवल अगर यह पहले से निर्दिष्ट नहीं है
सार्वजनिक वस्तु प्राप्त (वस्तु कुंजी)यह निर्दिष्ट कुंजी के लिए मान लौटाता है
सार्वजनिक बूलियन में शामिल होता है
इसका उपयोग इस नक्शे से निर्दिष्ट कुंजी को खोजने के लिए किया जाता है

मानचित्र का कार्यान्वयन

वहाँ कई हैं कि जावा मानचित्र को लागू करेंलेकिन तीन प्रमुख और सामान्य प्रयोजन कार्यान्वयन हैंHashMap, TreeMap, और LinkedHashMap।आइए प्रत्येक कार्यान्वयन की विशेषताओं और व्यवहारों को एक उदाहरण के साथ देखें

हैशपॉप क्लास

जावा मैप इंटरफ़ेस को लागू करने वाला सबसे आम वर्ग है हाशप। यह मानचित्र इंटरफ़ेस का एक हैश तालिका आधारित कार्यान्वयन है।यह सभी मैप ऑपरेशंस को लागू करता हैऔर शून्य मान और एक अशक्त कुंजी की अनुमति देता है। साथ ही, यह वर्ग अपने तत्वों के बीच कोई आदेश नहीं रखता है। यहाँ एक उदाहरण कार्यक्रम हैशपॉप वर्ग को प्रदर्शित करता है।

पैकेज MyPackage import java.util। * class HashMapExample {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {मानचित्र पाठ्यक्रम = नया HashMap () // कुछ पाठ्यक्रम जोड़ें। Courses.put ('जावा पाठ्यक्रम', नया Integer (6)) पाठ्यक्रम ।put ('क्लाउड पाठ्यक्रम', नया Integer (7)) पाठ्यक्रम ।put ('प्रोग्रामिंग पाठ्यक्रम', नया Integer (5)) courses.put (' डेटा साइंस पाठ्यक्रम ', नया इंटेगर (2)) System.out.println (' कुल पाठ्यक्रम: '+ पाठ्यक्रम.साइज़ ()) सेटst = Courses.entrySet () for (Map.Entry me: st) {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out। Println () स्ट्रिंग searchKey = 'Java कोर्स' यदि (कोर्सेज ।containsKey (searchKey)) System.out.println ('मिला कुल' + कोर्सेस + (searchKey) + '' + searcheyey)}}

आउटपुट

कुल पाठ्यक्रम: 4 क्लाउड पाठ्यक्रम: 7 प्रोग्रामिंग पाठ्यक्रम: 5 डेटा विज्ञान पाठ्यक्रम: 2 जावा पाठ्यक्रम: 6 कुल 6 जावा पाठ्यक्रम

उपरोक्त कार्यक्रम में, मैंने तालिका में उल्लिखित कई विधियों का उपयोग किया है। सबसे पहले, डाल() विधि नक्शे में 4 प्रविष्टियाँ सम्मिलित करती है, और आकार () अगले चरण में विधि नक्शे के आकार (कुल कुंजी-मूल्य जोड़े) को प्रदर्शित करती है। उसके बाद, अगले चरण में, ए एंट्रीसेट () विधि सभी कुंजी-मान जोड़े देता है। कार्यक्रम यह भी दिखाता है कि कैसे उपयोग करना है प्राप्त() संबंधित कुंजी का उपयोग करके मूल्य की खोज करने की विधि।

चलिए अगली कक्षा में चलते हैं जो Java Map Interface - TreeMap को लागू करता है।

ट्रीपॉपर क्लास

यह कार्यान्वयन अंतर्निहित के रूप में रेड-ब्लैक ट्री का उपयोग करता है डेटा संरचना । ट्रीपैप को उसकी कुंजियों के प्राकृतिक क्रम के अनुसार, या निर्माण के समय प्रदान किए गए एक तुलनित्र द्वारा क्रमबद्ध किया जाता है। यह कार्यान्वयन नल को अनुमति नहीं देता है लेकिन बनाए रखता हैइसके तत्वों पर आदेश। ट्रीपैप वर्ग को प्रदर्शित करने वाला एक उदाहरण कार्यक्रम यहां दिया गया है।

पैकेज MyPackage import java.util। * class TreeMapEx {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {मानचित्र पाठ्यक्रम = नया TreeMap () // कुछ पाठ्यक्रम जोड़ें। courses.put ('जावा पाठ्यक्रम', नया इंटेगर (3)) पाठ्यक्रम। '(' एडब्ल्यूएस कोर्स ', नया इंटीजर (7)) पाठ्यक्रम।पुट (' प्रोग्रामिंग पाठ्यक्रम ', नया इंटीजर (8)) पाठ्यक्रम।पुट (' डेटा साइंस पाठ्यक्रम ', नया इंटेगर (2)) System.out.println (' कुल पाठ्यक्रम: '+ पाठ्यक्रम.साइज़ ()) सेटst = Courses.entrySet () for (Map.Entry me: st) {System.out.print (me.getKey () + ':') System.out.println (me.getValue ())} System.out। Println ()}}

आउटपुट

कुल पाठ्यक्रम: 4 एडब्ल्यूएस पाठ्यक्रम: 7 डेटा विज्ञान पाठ्यक्रम: 2 जावा पाठ्यक्रम: 3 प्रोग्रामिंग पाठ्यक्रम: 8

आउटपुट में, नक्शे के तत्व सख्त लेक्सिकोग्राफ़िक क्रम में मुद्रित होते हैं, जो हैशपॉल्स के पिछले उदाहरणों में प्रकट नहीं होता है। अगली कक्षा जिस पर हम चर्चा करने जा रहे हैं LinkedHashMap

लिंक्डहाशप क्लास

जैसा कि नाम से पता चलता है कि जावा मैप इंटरफेस का यह कार्यान्वयन हैश टेबल और अंतर्निहित डेटा संरचनाओं के रूप में एक लिंक्ड सूची का उपयोग करता है। इस प्रकार एक LinkedHashMap का क्रम हैडिफ़ॉल्ट क्रम के रूप में सम्मिलन-क्रम के साथ, पूर्वानुमानित। इसके अलावा, HashMap की तरह नल की अनुमति देता है। ट्रीपैप वर्ग को प्रदर्शित करने वाला एक उदाहरण कार्यक्रम यहां दिया गया है।

पैकेज MyPackage import java.util। * सार्वजनिक वर्ग LinkedHashMapExample {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [a]) {LinkedHashMap पाठ्यक्रम = नए लिंक्डहाशप (पाठ्यक्रम) .put ('जावा पाठ्यक्रम', नया पूर्णांक (3) पाठ्यक्रम पाठ्यक्रम ('') क्लाउड पाठ्यक्रम ', नए इंटेगर (7)) पाठ्यक्रम.पुट (' प्रोग्रामिंग पाठ्यक्रम ', नए इंटेगर (8)) पाठ्यक्रम.पुट (' डेटा विज्ञान पाठ्यक्रम ', नए इंटीजर (2)) // यह उसी क्रम में तत्वों को प्रिंट करता है। // के रूप में वे सम्मिलित किए गए थे System.out.println (पाठ्यक्रम) System.out.println ('कुल पाठ्यक्रम:' + पाठ्यक्रम.साइज़ ()) System.out.println ('इसमें मुख्य' Hadoop शामिल हैं? '+ पाठ्यक्रम .containsKey ('Hadoop')) System.out.println ('कुंजी के लिए मान' प्रोग्रामिंग पाठ्यक्रम ':' + courses.get ('प्रोग्रामिंग पाठ्यक्रम')) System.out.println ('क्या नक्शा खाली है?' + पाठ्यक्रम .isEmpty ()) System.out.println ('एलीमेंट एलिमेंट' क्लाउड कोर्सेस ':' + courses.remove ('क्लाउड कोर्सेस')) System.out.println (कोर्सेस)}}

आउटपुट

linux में java classpath लगाना
{जावा पाठ्यक्रम = ३, क्लाउड पाठ्यक्रम =,, प्रोग्रामिंग पाठ्यक्रम = Science, डेटा विज्ञान पाठ्यक्रम = २} कुल पाठ्यक्रम: ४ प्रमुख op हडोप ’शामिल हैं? झूठा मुख्य 'प्रोग्रामिंग पाठ्यक्रम' के लिए मूल्य प्राप्त करना: 8 क्या नक्शा खाली है? गलत हटाए गए तत्व 'क्लाउड पाठ्यक्रम': 7 {जावा पाठ्यक्रम = 3, प्रोग्रामिंग पाठ्यक्रम = 8, डेटा विज्ञान पाठ्यक्रम = 2}

उदाहरण कार्यक्रम समझने के लिए बहुत सरल है। मैंने Java में LinkeHashMap के कामकाज को प्रदर्शित करने के लिए कुछ बुनियादी तरीकों का उपयोग किया है। जैसा कि मैंने पहले कहा था कि इन तीनों के अलावा कई अन्य वर्ग हैं जो जावा मैप इंटरफेस को लागू करते हैं।

यह हमें इस 'जावा मैप इंटरफेस' लेख के अंत में लाता है। मैंने जावा के दिलचस्प विषयों में से एक को कवर किया है, जो जावा में मैप इंटरफ़ेस है।

सुनिश्चित करें कि आप जितना संभव हो उतना अभ्यास करें और अपने अनुभव को वापस लाएं।

इसकी जाँच पड़ताल करो 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है। हम यहां आपकी यात्रा में हर कदम पर आपकी मदद करने के लिए हैं, इस साक्षात्कार साक्षात्कार के अलावा बनने के लिए, हम एक पाठ्यक्रम के साथ आते हैं, जो छात्रों और पेशेवरों के लिए बनाया गया है, जो जावा डेवलपर बनना चाहते हैं।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इस interface जावा मैप इंटरफेस ’के टिप्पणी अनुभाग में इसका उल्लेख करें लेख और हम जितनी जल्दी हो सके आप को वापस मिल जाएगा।