Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

जावा में LinkedHashMap और LinkedHashSet

LinkedHashMap

Map इंटरफेस का हैश टेबल और लिंक्ड लिस्ट कार्यान्वयन, अनुमानित पुनरावृत्ति क्रम के साथ।

उदाहरण

import java.util.*; 

public class Demo { 
    public static void main(String args[]) { 
        LinkedHashMap my_set = new LinkedHashMap<>(); 
        my_set.put(67, "Joe"); 
        my_set.put(90, "Dev"); 
        my_set.put(null, "Nate"); 
        my_set.put(68, "Sara"); 
        my_set.put(69, "Amal"); 
        my_set.put(null, "Jake"); 
        my_set.put(69, "Ral"); 
        
        my_set.entrySet().stream().forEach((m) -> { 
            System.out.println(m.getKey() + " " + m.getValue()); 
        }); 
    } 
}

आउटपुट

67 Joe 
90 Dev 
null Jake 
68 Sara 
69 Ral

व्याख्या: Demo क्लास में मुख्य फंक्शन होता है, जहां LinkedHashMap का एक इंस्टेंस बनाया जाता है। 'put' फंक्शन का उपयोग करके इस हैश मैप में तत्व जोड़े जाते हैं, 'इंटीजर, स्ट्रिंग' फॉर्मेट में। 'forEach' लूप का उपयोग करके हैश मैप पर पुनरावृति की जाती है और तत्व कंसोल पर प्रदर्शित होते हैं।

मुख्य विशेषताएं:

  • डालने का क्रम बनाए रखता है
  • एक null कुंजी और एकाधिक null मान अनुमत हैं
  • डुप्लिकेट कुंजी बाद के मान से ओवरराइट हो जाती है (69: "Ral")

LinkedHashSet

Set इंटरफेस का हैश टेबल और लिंक्ड लिस्ट कार्यान्वयन, अनुमानित पुनरावृत्ति क्रम के साथ।

उदाहरण

import java.util.*; 

public class Demo { 
    public static void main(String args[]) { 
        LinkedHashSet my_set = new LinkedHashSet<>(); 
        my_set.add("Joe"); 
        my_set.add("Dev"); 
        my_set.add("Nate"); 
        my_set.add("Sara"); 
        my_set.add("Amal"); 
        my_set.add("Jake"); 
        my_set.add("Ral"); 
        
        Iterator my_itr = my_set.iterator(); 
        while (my_itr.hasNext()) { 
            System.out.println(my_itr.next()); 
        } 
    } 
}

आउटपुट

Joe 
Dev 
Nate 
Sara 
Amal 
Jake 
Ral

व्याख्या: Demo क्लास में मुख्य फंक्शन होता है, जहां LinkedHashSet का एक इंस्टेंस बनाया जाता है। 'add' फंक्शन का उपयोग करके इस LinkedHashSet में तत्व जोड़े जाते हैं। एक इटरेटर परिभाषित किया जाता है जिसका उपयोग हैश सेट तत्वों पर पुनरावृति के लिए किया जा सकता है। ये तत्व कंसोल पर प्रदर्शित होते हैं।

LinkedHashMap vs LinkedHashSet:

विशेषताLinkedHashMapLinkedHashSet
इंटरफेसMapSet
डुप्लिकेट कुंजीनहीं (ओवरराइट)लागू नहीं
डुप्लिकेट मानअनुमतनहीं
Null तत्व1 null कुंजी, एकाधिक null मान1 null तत्व
  1. Java में StringIndexOutOfBoundsException क्या है? Java में StringIndexOutOfBoundsException क्या है?

    स्ट्रिंग्स का उपयोग Java में वर्णों के अनुक्रम को संग्रहीत करने के लिए किया जाता है, उन्हें ऑब्जेक्ट्स के रूप में माना जाता है। java.lang पैकेज का String क्लास एक स्ट्रिंग का प्रतिनिधित्व करता है। आप स्ट्रिंग को या तो new कीवर्ड का उपयोग करके (किसी अन्य ऑब्जेक्ट की तरह) बना सकते हैं, या लिटरल को मान

  1. - Java में @JsonAnyGetter और @JsonAnySetter एनोटेशन कब कॉल कर सकते हैं?

    @JsonAnyGetter एनोटेशन एक Map को उन प्रॉपर्टीज़ के लिए कंटेनर के रूप में उपयोग करने में सक्षम बनाता है जिन्हें हम JSON में सीरियलाइज़ करना चाहते हैं और @JsonAnySetter एनोटेशन Jackson को JSON ऑब्जेक्ट में सभी अनरिकग्नाइज़्ड फील्ड्स के लिए उसी सेटर मेथड को कॉल करने का निर्देश देता है, जिसका अर्थ है कि

  1. - Java में स्ट्रिंग को हेक्साडेसिमल में और इसके विपरीत कैसे बदलें?

    स्ट्रिंग से हेक्साडेसिमल Integer क्लास की toHexString() विधि एक इंटीजर को पैरामीटर के रूप में स्वीकार करती है और एक हेक्साडेसिमल स्ट्रिंग लौटाती है। इसलिए, स्ट्रिंग को हेक्साडेसिमल स्ट्रिंग में बदलने के लिए: वांछित स्ट्रिंग प्राप्त करें। एक खाली StringBuffer ऑब्जेक्ट बनाएं। String क्लास की toChar