ArrayList बनाम वेक्टर: अंतर और तुलना

ArrayList और वैक्टर सरणी के तत्वों को संग्रहीत करते हैं। वे उपयोगकर्ताओं को कई ऑब्जेक्ट संग्रहीत करने की अनुमति देते हैं। इन दोनों में डेटा गतिशील रूप से संग्रहीत होता है।

चाबी छीन लेना

  1. ArrayList और वेक्टर जावा में आकार बदलने योग्य सरणी कार्यान्वयन हैं।
  2. वेक्टर सिंक्रनाइज़ है, लेकिन ArrayList नहीं है।
  3. ArrayList तेज़ है. वेक्टर थ्रेड-सुरक्षित है.

ArrayList बनाम वेक्टर

ArrayList एक आकार बदलने योग्य सरणी है जो सिंक्रनाइज़ नहीं है, जो इसे तेज़ बनाती है। यह तत्वों को पार करने के लिए Iterator इंटरफ़ेस का उपयोग करता है। वेक्टर एक ही प्रकार के तत्वों को संग्रहीत करता है या अंतर्निहित रूप से परिवर्तित करता है और Iterator और गणना इंटरफ़ेस दोनों का उपयोग कर सकता है। यह समकालिक है और इसलिए धीमा है।

ArrayList बनाम वेक्टर

ArrayList उपयोगकर्ता को सरणी के आकार में संशोधन करने में मदद करता है। ArrayList उपयोगकर्ता की आवश्यकता के आधार पर सरणी को छोटा या विस्तारित करता है।

वेक्टर जावा में पाया जाता है. पैकेज का उपयोग करें. यह तत्वों की एक गतिशील सरणी का समर्थन करता है जिसका अर्थ है कि सरणी आकार बदलने योग्य है। वेक्टर विरासत वर्ग से संबंधित हैं।

तुलना तालिका

तुलना के पैरामीटरसारणी सूचीवेक्टर
तुल्यकालनArrayList सिंक्रोनाइज़्ड नहीं है यानी, यह विभिन्न थ्रेड्स पर एक साथ काम कर सकता है।वेक्टर सिंक्रनाइज़ है यानी, एक पल में केवल एक थ्रेड ही कोड को संभाल सकता है।
गतिगैर-सिंक्रनाइज़ होने के कारण इसका संचालन तेज़ है।वेक्टर ऑपरेशन सिंक्रनाइज़ होने के कारण धीमी गति से चलते हैं।
पुन: आकार देनेयदि तत्व अपनी क्षमता से अधिक हो जाते हैं तो ArrayList मौजूदा सरणी आकार का 50% बढ़ा देता है।यदि तत्व अपनी क्षमता से अधिक हो जाते हैं तो वेक्टर मौजूदा सरणी आकार का 100% बढ़ जाता है।
पसंदप्रोग्रामर वैक्टर की तुलना में ArrayList को प्राथमिकता देते हैं।इसे कम पसंद किया जाता है क्योंकि वैक्टर में सिंक्रोनाइज़ेशन निम्न प्रदर्शन का कारण बनता है।
ट्रैवर्सल(पास-थ्रू)यह तत्वों को पार करने के लिए Iterator का उपयोग करता है।यह तत्वों को पार करने के लिए Iterator के साथ-साथ गणना का भी उपयोग कर सकता है।

ऐरेलिस्ट क्या है?

ArrayList एक परिवर्तनीय सारणी है। यह पाया जाता है जावा. उपयोग पैकेज. ArrayList का निर्माण तब सहायक होता है जब उपयोगकर्ता को शामिल किए जाने वाले डेटा के आकार का पता नहीं होता है।

यह भी पढ़ें:  निरपेक्ष बनाम वृद्धिशील एनकोडर: अंतर और तुलना

ArrayList उपयोगकर्ताओं को तत्वों को जोड़ने, तत्वों को हटाने, तत्वों को बदलने और लूप संचालन के बुनियादी संचालन करने देता है। 

ArrayList एकाधिक परिचालनों का समर्थन करता है। 

  1. तत्व जोड़ने के लिए: तत्वों को जोड़ने के लिए ऐड() ऑपरेशन का उपयोग करें।
  2. किसी भी तत्व तक पहुँचने के लिए: तत्वों को get() विकल्प का उपयोग करके एक्सेस किया जा सकता है। तत्वों तक एक इंडेक्सर का उपयोग करके पहुंचा जाता है, जो शून्य से शुरू होता है। 
  3. किसी तत्व को बदलने के लिए: किसी विशिष्ट तत्व में परिवर्तन करने के लिए, सेट() ऑपरेशन का उपयोग करें।
  4. तत्वों को हटाने के लिए: ये तीन ऑपरेशन ArrayList में तत्वों को हटाने के लिए रिमूव(), रिमूवरेंज( , ), और रिमूवएट का उपयोग किया जाता है।

ArrayList इसके आकार से संचालित होता है। हालाँकि, इसे तत्वों को जोड़कर विस्तारित किया जा सकता है और तत्वों को हटाकर छोटा किया जा सकता है।

Java ArrayList में कोई तत्व मौजूद है या नहीं, यह जाँचने के लिए निम्नलिखित दो विधियों का उपयोग किया जाता है।

  1. रोकना()
  2. के सूचकांक()

वेक्टर क्या है?

वेक्टर को एक विरासत वर्ग माना जाता है जो सिंक्रनाइज़ है। यदि संचालन के लिए एकाधिक थ्रेड की आवश्यकता होती है, तो कोई भी दो थ्रेड एक साथ काम नहीं कर सकते हैं।

वेक्टर को थ्रेड-सुरक्षित माना जाता है। थ्रेड सुरक्षा उपयोगकर्ताओं को यह सुनिश्चित करती है कि सभी थ्रेड उचित रूप से कार्य करें और अवांछित इंटरैक्शन के बिना उनके डिज़ाइन मानदंडों को पूरा करें। 

वेक्टर, वेक्टर के आकार को विस्तारित या छोटा करके तत्वों को जोड़ना या हटाना सुनिश्चित करता है। वहाँ हो सकता है कुछ मामले जहां उपयोगकर्ता को किसी सरणी की लंबाई के संबंध में पूर्व ज्ञान नहीं होता है।

वेक्टर, ArrayList की तरह, उपयोगकर्ताओं को तत्वों को जोड़ने, तत्वों को हटाने, तत्वों को बदलने और लूप संचालन के बुनियादी संचालन करने देता है।

  1. तत्व जोड़ने के लिए: तत्वों को जोड़ने के लिए ऐड() ऑपरेशन का उपयोग करें।
  2. तत्वों को बदलने के लिए: तत्वों को बदलने के लिए सेट() ऑपरेशन का उपयोग करें। वैक्टर में तत्वों को उनके सूचकांक द्वारा जिम्मेदार ठहराया जाता है।
  1. तत्वों को हटाने के लिए: वेक्टर से तत्वों को हटाने के लिए रिमूव() विधि का उपयोग करें।
यह भी पढ़ें:  इंस्टाग्राम बनाम स्नैपचैट: अंतर और तुलना

वेक्टर बुनियादी बताए गए ऑपरेशनों के अलावा अन्य सिंप्लेक्स ऑपरेशनों का भी समर्थन करता है।

ArrayList और वेक्टर के बीच मुख्य अंतर

  1. ArrayList ऑपरेशन थ्रेड-सुरक्षित नहीं हैं, जबकि वेक्टर ऑपरेशन थ्रेड-सुरक्षित हैं।
  2. ArrayList एक संग्रह वर्ग है, जबकि वेक्टर एक विरासत वर्ग है।
संदर्भ
  1. https://dl.acm.org/doi/abs/10.1145/1044550.1041666
  2. https://dl.acm.org/doi/abs/10.1145/3394451.3397204

अंतिम अद्यतन: 19 जुलाई, 2023

बिंदु 1
एक अनुरोध?

मैंने आपको मूल्य प्रदान करने के लिए इस ब्लॉग पोस्ट को लिखने में बहुत मेहनत की है। यदि आप इसे सोशल मीडिया पर या अपने मित्रों/परिवार के साथ साझा करने पर विचार करते हैं, तो यह मेरे लिए बहुत उपयोगी होगा। साझा करना है ♥️

"ऐरेलिस्ट बनाम वेक्टर: अंतर और तुलना" पर 24 विचार

    • मैं सहमत हूं, यह जावा में इन मूलभूत डेटा संरचनाओं को समझने के लिए एक उत्कृष्ट मार्गदर्शिका है।

      जवाब दें
  1. सरणी आकार बदलने की बारीकियां बहुत मददगार थीं। लेख की व्यावहारिक अंतर्दृष्टि की बहुत सराहना की जाती है।

    जवाब दें
  2. मैं जावा में नया हूं, इसलिए मैं विस्तृत स्पष्टीकरण की सराहना करता हूं। यह मेरे लिए मददगार होगा.

    जवाब दें
  3. लेख प्रभावी ढंग से जटिल अवधारणाओं को आसानी से समझने योग्य बिंदुओं में तोड़ देता है। शिक्षार्थियों के लिए बढ़िया.

    जवाब दें
  4. संचालन और कार्यप्रणाली की स्पष्ट व्याख्या इस लेख को जावा डेवलपर्स के लिए एक मूल्यवान संसाधन बनाती है।

    जवाब दें

एक टिप्पणी छोड़ दो

क्या आप इस लेख को बाद के लिए सहेजना चाहते हैं? अपने लेख बॉक्स में सहेजने के लिए नीचे दाएं कोने में दिल पर क्लिक करें!