उदाहरणों के साथ जावा में ट्री मैप का संक्षिप्त परिचय



यह लेख आपको जावा में ट्रीपप के विस्तृत और व्यापक ज्ञान के साथ तरीकों और रचनाकारों के उदाहरण प्रदान करेगा।

जावा में एक मैप इंटरफ़ेस को लागू करना एक बहुत ही महत्वपूर्ण कार्य है। इस उद्देश्य के लिए, हमारे पास है ट्रीपैप तथा हैश मैप । इस लेख में हमारा ध्यान TreeMap में होगा निम्नलिखित क्रम में:

Java में एक TreeMap क्या है?

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





TreeMap-in-JavaTreemap द्वारा बनाए रखा गया स्टोरिंग ऑर्डर किसी भी अन्य सॉर्ट किए गए नक्शे के समान होना चाहिए, भले ही स्पष्ट तुलनित्र हों। ट्रेमैपकार्यान्वयन इस अर्थ में सिंक्रनाइज़ नहीं किया गया है कि यदि किसी नक्शे को कई थ्रेड्स द्वारा एक्सेस किया जाता है, तो समवर्ती और कम से कम एक थ्रेड मैप को संरचनात्मक रूप से संशोधित करता है, इसे बाहरी रूप से सिंक्रनाइज़ किया जाना चाहिए।

ट्रीमैप की विशेषताएं

  • यह वर्ग जावा कलेक्शंस फ्रेमवर्क का सदस्य है।



  • क्लास नेवीगैबपेज़, सॉर्टेड मैप सहित मैप इंटरफेस को लागू करता है और एब्सट्रैक्ट को बढ़ाता है

  • जावा में ट्रीपैप शून्य कुंजियों (जैसे मानचित्र) की अनुमति नहीं देता है और इस प्रकार NullPointerException को फेंक दिया जाता है। हालांकि, कई शून्य मान अलग-अलग कुंजी के साथ जुड़े हो सकते हैं।

  • सभी Map.Entry जोड़े इस वर्ग के तरीकों से लौटे और इसके विचार उस समय के मैपिंग के स्नैपशॉट का प्रतिनिधित्व करते हैं जो वे उत्पादित किए गए थे।



  • वे Entry.setValue विधि का समर्थन नहीं करते हैं।

    जावा को इंट में डबल परिवर्तित करना

याद करने के लिए महत्वपूर्ण बिंदु

  1. मैप इंटरफेस को लागू करने के अलावा, जावा ट्रीपाइप भी नेविगेबल मैप को लागू करता है और इनडायरेक्टली इम्प्लीमेंटेड सॉर्टेड मैप इंटरफेस को लागू करता है। TreeMap भी AbstractMap वर्ग का विस्तार करता है।

  2. ट्रीबैप प्रविष्टियाँ इसके कुंजियों के प्राकृतिक क्रम में क्रमबद्ध हैं। यह ऑर्डर करने के लिए उपयोग किए जाने वाले तुलनित्र प्रदान करने के लिए एक कंस्ट्रक्टर भी प्रदान करता है। इसलिए यदि आप किसी भी वर्ग को कुंजी के रूप में उपयोग कर रहे हैं, तो सुनिश्चित करें कि यह प्राकृतिक आदेश के लिए तुलनात्मक इंटरफ़ेस को लागू कर रहा है। इन विधियों के महत्व को समझने के लिए जावा संग्रह साक्षात्कार प्रश्न देखें।

  3. जावा ट्रीपाउप कार्यान्वयन में कंसर्न के लिए गारंटीकृत लॉग (एन) समय लागत, संचालन, पुट और हटाने का प्रावधान है।

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

  5. ट्री मैप के तरीके कीसेट और वैल्यू Iterator को लौटाते हैं जो प्रकृति में फेल-फास्ट है, इसलिए कोई भी समवर्ती संशोधन समवर्तीModificationException को फेंक देगा।

  6. जावा में ट्रीपैप शून्य कुंजियों की अनुमति नहीं देता है, हालाँकि, आपके पास विभिन्न कुंजियों से जुड़े कई शून्य मान हो सकते हैं।

ट्रीपॉपर में कंस्ट्रक्टर्स

बिल्डर विवरण
ट्रीपैप () एक खाली treemap का निर्माण करता है जिसे उसकी कुंजियों के प्राकृतिक क्रम का उपयोग करके सॉर्ट किया जाएगा।
ट्रीपैप (तुलनित्र COMP) एक रिक्त ट्री-आधारित मानचित्र का निर्माण करता है जिसे तुलनित्र COMP का उपयोग करके सॉर्ट किया जाएगा।
ट्रीपैप (मानचित्र m) मी से प्रविष्टियों के साथ एक ट्रेमैप का प्रारंभ करता है, जिसे कुंजी के प्राकृतिक क्रम का उपयोग करके सॉर्ट किया जाएगा।
ट्रीपॉपर SortedMap sm से प्रविष्टियों के साथ एक treemap को आरम्भ करता है, जिसे sm के समान क्रम में क्रमबद्ध किया जाएगा।

ट्रीपैप में तरीके

तरीका विवरण
शून्य स्पष्ट () इस ट्रीपैप से सभी मैपिंग को हटा देता है।
ऑब्जेक्ट क्लोन () इस TreeMap उदाहरण की एक उथली प्रतिलिपि लौटाता है।
तुलनित्र तुलनित्र () यदि यह मानचित्र अपनी कुंजियों के प्राकृतिक क्रम का उपयोग करता है, तो इस नक्शे को ऑर्डर करने के लिए उपयोग किए गए तुलनित्र को वापस या अशक्त कर देता है।
बूलियन होता हैकेय (ऑब्जेक्ट कुंजी) यदि यह नक्शा निर्दिष्ट कुंजी के लिए मैपिंग में है तो यह सही है।
बूलियन समरूपता (वस्तु मान) यदि यह मानचित्र निर्दिष्ट मान पर एक या अधिक कुंजियों को मैप करता है, तो यह सही है।
प्रविष्टि सेट करें () इस नक्शे में निहित मैपिंग का एक सेट दृश्य देता है।
ऑब्जेक्ट FirstKey () इस सॉर्ट किए गए नक्शे में वर्तमान में पहली (सबसे कम) कुंजी लौटाता है।
ऑब्जेक्ट मिलता है (ऑब्जेक्ट कुंजी) वह मान लौटाता है जिसके लिए यह मानचित्र निर्दिष्ट कुंजी को मैप करता है।
सॉर्ट किए गए मुख्यपृष्ठ (ऑब्जेक्ट टोके) इस नक्शे के उस हिस्से का एक दृश्य देता है जिसकी कुंजियाँ ककी से कड़ाई से कम हैं।
सेट कीसेट () इस नक्शे में निहित कुंजियों का एक सेट दृश्य देता है।
ऑब्जेक्ट lastKey () इस सॉर्ट किए गए नक्शे में वर्तमान में अंतिम (उच्चतम) कुंजी देता है।
ऑब्जेक्ट डाला (ऑब्जेक्ट कुंजी, ऑब्जेक्ट मान) इस नक्शे में निर्दिष्ट कुंजी के साथ निर्दिष्ट मान संबद्ध करता है।
शून्य putAll (मानचित्र मानचित्र) निर्दिष्ट नक्शे से मैपिंग के सभी मैपिंग की प्रतिलिपि।
ऑब्जेक्ट निकालें (ऑब्जेक्ट कुंजी) यदि मौजूद है तो इस ट्री मैप से इस कुंजी की मैपिंग निकाल देता है।
int आकार () इस मैप में की-वैल्यू मैपिंग की संख्या लौटाता है।
सॉर्ट किए गए उप-मानचित्र (ऑब्जेक्ट सेके, ऑब्जेक्ट टूके) इस मानचित्र के उस भाग का एक दृश्य देता है जिसकी कुंजियाँ, के से लेकर, समावेशी, tokey, अनन्य हैं।
SortedMap tailMap (वस्तु fromKey) इस मानचित्र के उस हिस्से का दृश्य देता है जिसकी कुंजियाँ काकी से अधिक या बराबर हैं।
संग्रह मान () इस नक्शे में निहित मूल्यों का एक संग्रह दृश्य लौटाता है।

जावा में ट्रीपैप का उदाहरण

आयात java.util.TreeMap सार्वजनिक वर्ग TreeMapMain {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग args []) {// ट्रीपाइप देश के साथ कुंजी और पूँजी के रूप में मूल्य // TreeMap भंडार प्राकृतिक तत्वों की कुंजी के क्रम में। TreeMap CountryCapitalMap = new TreeMap () CountryCapitalMap.put ('भारत', 'दिल्ली') CountryCapitalMap.put ('जापान', 'टोक्यो') CountryCapitalMap.put ('फ्रांस', 'पेरिस') countryCapitalMap.put ('रूस') , 'मॉस्को ') System.out.println (' ----------------------------- ') // Iterating TreeMap का उपयोग करना ) और प्रत्येक लूप के लिए System.out.println ('Iterating TreeMap का उपयोग कर keySet () और प्रत्येक लूप के लिए)' (स्ट्रिंग देश के लिए: CountryCapitalMap.keySet) ()) {System.out.println ('देश:' + देशक + ' और पूँजी: '+ देशकैपिटल मैप (गैजेट (देशके))} System.out.println (' ----------------------------- ' )}}

आउटपुट:

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

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