जावा में सूची और सेट के बीच अंतर

लेखक: Laura McKinney
निर्माण की तारीख: 2 अप्रैल 2021
डेट अपडेट करें: 15 मई 2024
Anonim
प्रधानमंत्री आवास योजना के लिए शिकायत कैसे करे ! घर बैठे 2 मिनट में मिलेगा आवास योजना Modi speech
वीडियो: प्रधानमंत्री आवास योजना के लिए शिकायत कैसे करे ! घर बैठे 2 मिनट में मिलेगा आवास योजना Modi speech

विषय


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

  1. तुलना चार्ट
  2. परिभाषा
  3. मुख्य अंतर
  4. निष्कर्ष

तुलना चार्ट

तुलना के लिए आधारसूची सेट
बुनियादीसूची एक सूची में संग्रहीत तत्वों के अनुक्रम को बनाए रखती है।सेट विशेष रूप से सम्मिलन क्रम को बनाए नहीं रखता है लेकिन, लिंक्ड हैशसेट प्रविष्टि क्रम को बनाए रखता है।
प्रतिलिपिसूची में डुप्लिकेट तत्व हो सकते हैं।यदि आप डुप्लिकेट तत्वों को सम्मिलित करने का प्रयास करते हैं तो ऐड () विधि झूठी हो जाती है।
तरीकेसंग्रह में परिभाषित विधियों के अलावा, सूची अपने स्वयं के तरीकों में से कुछ को परिभाषित करती है।सेट किसी भी अतिरिक्त विधि को परिभाषित नहीं करता है।
कार्यान्वयन सूची ArrayList, LinkedList, CopyOnWriteArrayList, वेक्टर, स्टैक द्वारा कार्यान्वित की जाती है।सेट को HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet द्वारा कार्यान्वित किया जाता है।


सूची की परिभाषा

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

सूची में किसी अनुक्रमित की सीमा पर संचालित करने के लिए सूची किसी भी विधि को परिभाषित नहीं करती है। यह एक सबलिस्ट () विधि को परिभाषित करता है जो एक निर्दिष्ट रेंज की मूल सूची से एक सबलिस्ट लौटाता है। मूल सूची में जो परिवर्तन आप सबलिस्ट में करते हैं, वे भी दिखाई देते हैं। सूची इंटरफ़ेस ArrayList, LinkedList, CopyOnWriteArrayList, वेक्टर, स्टैक द्वारा कार्यान्वित किया जाता है।

सेट की परिभाषा

सेट इंटरफ़ेस संग्रह इंटरफ़ेस का विस्तार करता है। सेट इंटरफ़ेस एक संग्रह या वस्तुओं का एक समूह है जिसमें कोई डुप्लिकेट ऑब्जेक्ट नहीं है। इसका मतलब है कि दो संदर्भ एक वस्तु का संदर्भ नहीं दे सकते हैं, या एक संदर्भ दो वस्तुओं का संदर्भ नहीं दे सकता है, या नल के संदर्भ में दो संदर्भ नहीं हो सकते हैं। तत्व का क्रम या अनुक्रम महत्वपूर्ण सेट नहीं है, लेकिन ऐसा नहीं है कि यह निर्धारित सेट को प्रतिबंधित करता है।


सेट इंटरफ़ेस संग्रह में परिभाषित विधि के अलावा किसी भी विधि को परिभाषित नहीं करता है। इसके बजाय, यह किसी संग्रह में किसी डुप्लिकेट ऑब्जेक्ट को जोड़ने के लिए ऐड () और एडॉल () संग्रह के तरीकों को प्रतिबंधित करता है। यदि आप किसी संग्रह में किसी डुप्लिकेट ऑब्जेक्ट को जोड़ने की कोशिश कर रहे हैं, तो कलेक्शन के ऐड () विधि का उपयोग करके यह गलत हो जाता है। अन्यथा, यह सच है। सेट इंटरफ़ेस HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet द्वारा कार्यान्वित किया जाता है।

  1. एक संग्रह में तत्वों / वस्तु का क्रम सूची में बनाए रखा गया है, जबकि सेट तत्वों के क्रम को बनाए नहीं रखता है, लेकिन एक अपवाद है LinkedHashSet प्रविष्टि क्रम बनाए रखता है।
  2. सूची में डुप्लिकेट तत्व हो सकते हैं क्योंकि यह किसी भी तत्व को उसके सूचकांक के साथ पहचानता है लेकिन, सेट किसी भी डुप्लिकेट तत्वों की अनुमति नहीं देता है क्योंकि इसमें किसी भी तरह के सूचकांक को किसी भी वस्तु को किसी संग्रह में पहचानने की अनुमति नहीं है।
  3. संग्रह में परिभाषित विधियों के अलावा, सूची अपने आप से कुछ तरीकों को परिभाषित करती है। दूसरी ओर, सेट अपनी स्वयं की किसी भी विधि को परिभाषित नहीं करता है, लेकिन यह किसी भी डुप्लिकेट तत्वों को जोड़ने के लिए संग्रह के तरीकों को प्रतिबंधित करता है।
  4. सूची को ArrayList, LinkedList, CopyOnWriteArrayList, वेक्टर, स्टैक इंटरफेस द्वारा कार्यान्वित किया जाता है। दूसरी ओर, सेट को हैशसेट, लिंक्डहाशसेट, एनुमसेट, ट्रीसेट, कॉपीऑनराईटएयरसेट इंटरफेस द्वारा कार्यान्वित किया जाता है।

निष्कर्ष:

सूची और सेट इंटरफ़ेस का उपयोग आवश्यकता पर निर्भर करता है। यदि वस्तुओं / तत्वों का क्रम महत्वपूर्ण है, तो आपको सूची इंटरफ़ेस का उपयोग करना चाहिए। यदि आपको अपने संग्रह में किसी डुप्लिकेट तत्वों की आवश्यकता नहीं है, तो आपको सेट इंटरफ़ेस का उपयोग करना होगा