जावा में वेक्टर क्या है और हम इसका उपयोग कैसे करते हैं?



Blog वेक्टर्स इन जावा ’पर यह ब्लॉग आपको यह समझने में मदद करेगा कि वेक्टर क्लास कैसे ArrayList से अलग है और इसमें शामिल विभिन्न तरीकों के बारे में जानने में आपकी मदद करता है।

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

सदिश वर्ग एक बाल वर्ग है सार कक्षा और पर लागू होता है सूची वैक्टर का उपयोग करने के लिए, हमें पहले java.util पैकेज से वेक्टर वर्ग आयात करना होगा:





आयात java.util.Vector

इस लेख में, हम वैक्टरों की निम्नलिखित अवधारणाओं पर चर्चा करेंगे:



आएँ शुरू करें!

फायदा जावा में वेक्टर की

  • डायनेमिक साइज होने की संपत्ति बहुत उपयोगी होती है क्योंकि यह मेमोरी अपव्यय से बचती है जब हम साइज नहीं जानते हैं डेटा संरचना घोषणा के समय।
  • जब हम किसी प्रोग्राम के बीच में अपनी डेटा संरचना का आकार बदलना चाहते हैं, तो वैक्टर बहुत उपयोगी साबित हो सकते हैं।

जावा में वैक्टर के लिए एक गतिशील आकार होने की संपत्ति अद्वितीय नहीं है। एक अन्य डेटा संरचना, जिसे एरियर लिस्ट के रूप में जाना जाता है, एक गतिशील आकार होने की संपत्ति को भी दर्शाता है। हालाँकि, कुछ कारणों से वैक्टर ArrayLists से अलग हैं:

  • सबसे पहले, वैक्टर सिंक्रनाइज़ किए जाते हैं जो इसे एक फायदा देता है इसकी तुलना में कार्यक्रमों के रूप में डेटा भ्रष्टाचार के जोखिम हैं।
  • दूसरे, वैक्टर के पास कुछ विरासत कार्य हैं जो केवल वैक्टर पर लागू किए जा सकते हैं न कि एरेलेस्ट पर।

वेक्टर में तत्वों को कैसे एक्सेस करें

हम डेटा के सदस्यों को केवल तत्व के सूचकांक का उपयोग करके एक्सेस कर सकते हैं, ठीक उसी तरह जैसे हम Arrays में तत्वों को एक्सेस करते हैं।



उदाहरण- यदि हम एक वेक्टर v में तीसरे तत्व को एक्सेस करना चाहते हैं, तो हम इसे केवल v [3] के रूप में संदर्भित करते हैं।

जावा में स्ट्रिंग को तारीख में बदलें

वैक्टर कंस्ट्रक्टर

नीचे सूचीबद्ध वेक्टर के कई रूप हैं निर्माता उपयोग के लिए उपलब्ध:

  1. वेक्टर (इंट इनिशियल कैपासिटी, इंट इन्क्रीमेंट) - दिए गए प्रारंभिक आकार और इसकी वृद्धि के साथ एक वेक्टर का निर्माण करता है।
  2. वेक्टर (int initialCapacity) - एक खाली वेक्टर को दिए गए आद्याक्षर के साथ बनाता है। इस मामले में, वृद्धि शून्य है।
  3. वेक्टर() - 10 की क्षमता का एक डिफ़ॉल्ट वेक्टर निर्माण करता है।
  4. वेक्टर (संग्रह सी) - किसी दिए गए संग्रह के साथ एक वेक्टर का निर्माण करता है, तत्वों का क्रम उसी तरह होता है जैसे संग्रह के पुनरावृत्तिकर्ता द्वारा लौटाया जाता है।

वैक्टर में तीन संरक्षित पैरामीटर भी हैं

  1. Int क्षमता वृद्धि () - यह स्वचालित रूप से वेक्टर की क्षमता को बढ़ाता है जब आकार क्षमता से अधिक हो जाता है।
  2. इंटिमाउंटकाउंट () - वेक्टर में तत्वों की संख्या बताओ
  3. वस्तु [] तत्वदत्ता () - सरणी जिसमें वेक्टर के तत्व संग्रहीत होते हैं

अधिकांश आम त्रुटियाँ सेक्टरों की घोषणा में

  • वेक्टर एक फेंकता है अवैध तर्क अपवाद यदि सदिश का प्रारंभिक आकार नकारात्मक है।
  • यदि निर्दिष्ट संग्रह शून्य है, तो यह फेंकता है शून्य सूचक का अपवाद

ध्यान दें:

  1. यदि वेक्टर वेतन वृद्धि निर्दिष्ट नहीं है, तो यह क्षमता होगीहर वेतन चक्र में दोगुना।
  2. एक वेक्टर की क्षमता आकार के नीचे नहीं हो सकती है, यह उसके बराबर हो सकती है।

आइए, वैक्टर कंस्ट्रक्टर्स को इनिशियलाइज़ करने के एक उदाहरण पर विचार करें।

उदाहरण: वेक्टर कंस्ट्रक्टर्स की शुरुआत

/ जावा कोड का चित्रण वेक्टर कंस्ट्रक्टर्स java.util आयात करते हैं। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {// डिफ़ॉल्ट वेक्टर वेक्टर v1 = नया वेक्टर बनाएं () // दिए गए वेक्टर वेक्टर का वेक्टर बनाएं = नया वेक्टर (20) // दिए गए आकार का एक वेक्टर बनाएं और इंक्रीमेंट वेक्टर v3 = नया वेक्टर (30,10) v2.add (100) v2.add (100) v2.add (100) // दिए गए वेक्टर का निर्माण करें। संग्रह वेक्टर v4 = नया वेक्टर (v2) System.out.println ('क्षमता का वेक्टर v1' + v1.capacity ()) System.out.println ('क्षमता का वेक्टर v2' + v2.capacity ()) System.out .println ('क्षमता का वेक्टर v3' + v3.capacity ()) System.out.println ('क्षमता का वेक्टर v4' + v4.capacity ())}

आउटपुट

कंस्ट्रक्टर्स - जावा में सेक्टर - एडुर्का

वैक्टर का मेमोरी आवंटन

अब तक, आप समझ गए होंगे कि वैक्टर का एक निश्चित आकार नहीं होता है, इसके बजाय, वे अपने आकार को गतिशील रूप से बदलने की क्षमता रखते हैं। कोई सोच सकता है कि वैक्टर वस्तुओं को संग्रहीत करने के लिए अनिश्चित लंबी जगह आवंटित करते हैं। पर ये स्थिति नहीं है। क्षेत्र दो क्षेत्रों 'क्षमता' और 'क्षमता वृद्धि' के आधार पर अपना आकार बदल सकते हैं। प्रारंभ में, वेक्टर के घोषित होने पर 'क्षमता' फ़ील्ड के बराबर आकार आवंटित किया जाता है। हम क्षमता के बराबर तत्व सम्मिलित कर सकते हैं। लेकिन जैसे ही अगला तत्व डाला जाता है, यह सरणी के आकार को 'क्षमता' में बढ़ाता है। ' इसलिए, यह गतिशील रूप से अपने आकार को बदलने में सक्षम है।

एक के लिए डिफ़ॉल्ट निर्माता जब भी क्षमता भरी हो और एक नया तत्व डाला जाए तो क्षमता दोगुनी हो जाती है।

उदाहरण - मान लीजिए कि हमारे पास InitialCapacity 5 का वेक्टर है और क्षमता वृद्धि 2.So वेक्टर के प्रारंभिक आकार में 5 तत्व हैं। हम इस वेक्टर में 5 तत्वों को एक-एक करके सम्मिलित करते हैं, अर्थात 1,2,3,4,5। जब हम वेक्टर में दूसरे तत्व को सम्मिलित करने का प्रयास करते हैं तो 6, वेक्टर का आकार 2 से बढ़ेगा। इसलिए वेक्टर का आकार अब 7. है। इसलिए वेक्टर आसानी से अपने आकार को नहीं के अनुसार समायोजित करता है। तत्वों का।

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

वेक्टर में तरीके

आइए कुछ बहुधा उपयोग की जाने वाली वेक्टर विधियों पर एक नज़र डालें।

  • बूलियन ऐड (ऑब्जेक्ट ओ) - यह वेक्टर के अंत में एक तत्व जोड़ता है।
// जावा कोड बूलियन ऐड दिखा रहा है () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है ) // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // जोड़ता है 'सूची' के अंत में v.add ('' है ') // जोड़ता है' के अंत में है सूची v.add ('फन') // 'Fun' को सूची के अंत में जोड़ता है System.out.println ('वेक्टर है' + v)}}

आउटपुट

  • शून्य जोड़ (int index, E element) - यह वेक्टर में निर्दिष्ट सूचकांक पर दिए गए तत्व को जोड़ता है
// जावा कोड शून्य जोड़ दिखा रहा है () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (0) बनाता है , 1) // 1 में सूचकांक में जोड़ता है। v.add (1, 'जावा') // सूचकांक में 1 जावा जोड़ता है। v (2, '' है ') // जोड़ता है' सूचकांक में 'है 2 v.add (3, 'फन') // इंडेक्स में 'फन' जोड़ता है 3 v.add (4, '!!!') // इंडेक्स 4 System.out.println ('पर' फन 'जोड़ता है) वेक्टर '+ v)}} है

आउटपुट

  • बूलियन निकालें (ऑब्जेक्ट ओ) - यह वेक्टर में दिए गए सूचकांक में तत्व को हटा देता है
// जावा कोड बूलियन रिमूवल दिखा रहा है (मेथड इम्पोर्ट java.util। * पब्लिक क्लास मेन {पब्लिक स्टैटिक वेद मेन (स्ट्रिंग [] आर्ग्स) {वेक्टर v = नया वेक्टर) () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है ) // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // जोड़ता है 'सूची' के अंत में v.add ('' है ') // जोड़ता है' के अंत में है सूची v.add ('फन') // 'Fun' को सूची के अंत में जोड़ता है System.out.println ('सदिश हटाने से पहले' + v) v.remove (1) System.out.println ('सदिश के बाद) निष्कासन '+ v)}}

आउटपुट

  • बूलियन निष्कासन ( वस्तु obj) - यह अपने नाम obj द्वारा तत्व को हटाता है (सूचकांक संख्या द्वारा नहीं)
// जावा कोड रिमूवमेंट दिखा रहा है () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // सूची के अंत में 'जावा' जोड़ता है। सूची के अंत में 'जोड़' ('है') // जोड़ता है ' v.add ('फन') // सूची के अंत में 'फन' जोड़ता है। System.out.println ('सदिश हटाने से पहले + v) v.removeElement (' जावा ') System.out.println (' सदिश) '+ v)} हटाने के बाद}

आउटपुट

  • इंट का आकार () - यह वेक्टर के आकार को लौटाता है।
// जावा कोड दिखा आकार () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (0) बनाता है 1) // 1 इंडेक्स में जोड़ता है 0 v.add (1, 'जावा') // इंडेक्स में 'जावा' जोड़ता है 1 v.add (2, 'है') // जोड़ता है 'इंडेक्स 2 पर है' v.add (3, 'फन') // 'फन' को इंडेक्स 3 में जोड़ता है। System.out.println ('वेक्टर का आकार' + v.size ())} है।

आउटपुट

  • Int क्षमता () - यह वेक्टर की क्षमता को लौटाता है
// जावा कोड दिखाने की क्षमता () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add बनाता है (0, 1) // 1 इंडेक्स में जोड़ता है 0 v.add (1, 'जावा') // इंडेक्स में 'जावा' जोड़ता है 1 v.add (2, 'है') // जोड़ता है 'इंडेक्स 2 पर है' v.add (3, 'फन') // 'फन' को इंडेक्स 3 में जोड़ता है। System.out.println ('वेक्टर क्षमता' + v.capacity ()))} है

आउटपुट

  • ऑब्जेक्ट मिलता है (इंट इंडेक्स) - यह तत्व को वेक्टर में दी गई स्थिति में लौटाता है
// जावा कोड दिखा रहा है () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // सूची के अंत में 'जावा' जोड़ता है। सूची के अंत में 'जोड़' ('है') // जोड़ता है ' v.add ('फन') // 'Fun' को सूची के अंत में जोड़ता है System.out.println ('इंडेक्स 1 में तत्व' + v.get (1))}} है

आउटपुट

  • ऑब्जेक्ट का पहला मूल्यांकन () - यह पहला तत्व देता है
// जावा कोड फर्स्ट एलिमेंट () मेथड इम्पोर्ट java.util। * पब्लिक क्लास मेन {पब्लिक स्टैटिक वोड मेन (स्ट्रिंग [] आर्ग्स) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है। // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // सूची के अंत में 'जावा' जोड़ता है। सूची के अंत में 'जोड़' ('है') // जोड़ता है ' v.add ('मज़ा') // सूची के अंत में 'Fun' जोड़ता है System.out.println ('पहला तत्व है' + v.firstElement ())}}

आउटपुट

  • ऑब्जेक्ट अंतिम रूप () - यह अंतिम तत्व देता है
// जावा कोड लास्ट एलिमेंट () विधि आयात java.util दिखा रहा है। * पब्लिक क्लास मेन {पब्लिक स्टैटिक शून्य मेन (स्ट्रिंग [] आर्ग्स) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (1) बनाता है। // सूची के अंत में 1 जोड़ता है। v.add ('जावा') // सूची के अंत में 'जावा' जोड़ता है। सूची के अंत में 'जोड़' ('है') // जोड़ता है ' v.add ('फन') // सूची के अंत में 'फन' जोड़ता है। System.out.println ('अंतिम तत्व' + v.lastElement ())}} है

आउटपुट

  • बूलियन बराबर (ऑब्जेक्ट ओ) - यह वेक्टर की समानता के लिए निर्दिष्ट वस्तु से तुलना करता है। यह सही है अगर सभी तत्व अपने संबंधित सूचकांकों पर खरे हैं
// जावा कोड बूलियन बराबर दिखा रहा है () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर वेक्टर vcopy - 20 वेक्टर बनाता है () v.add (1) // सूची 1 के अंत में जोड़ता है v.add ('जावा') // जोड़ता है 'जावा' सूची के अंत में v.add ('is') // Adds ' सूची vcad.add (0,1) के अंत में 'v'add (' मज़ा ') // जोड़ता है' मज़ा '// सूचकांक 1 vcopy.add (1) पर 1 जोड़ता है 'Java') // 1 'vcopy.add (2,' is ')' // 'Adds' को 'जावा' जोड़ता है 'इंडेक्स 2 vcopy.add (3,' Fun ') // Adds' Fun ' सूचकांक 3 vcopy.add (4, '!!!') // में जोड़ता है 'मज़ा' सूचकांक 4 पर अगर (v.equals (vcopy)) System.out.println ('दोनों वैक्टर बराबर हैं') अन्य प्रणाली .out.println ('वेक्टर्स समान नहीं हैं')}}

आउटपुट

  • शून्य ट्रिमटोसाइज़ () - यह विधि अतिरिक्त क्षमता को हटाती है और तत्वों को धारण करने की क्षमता रखती है यानी आकार के बराबर
// Java कोड दिखा रहा है trimToSize () विधि आयात java.util। * सार्वजनिक वर्ग मुख्य {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {वेक्टर v = नया वेक्टर () // यह एक डिफ़ॉल्ट वेक्टर v.add (0) बनाता है 1) // 1 इंडेक्स में जोड़ता है 0 v.add (1, 'जावा') // इंडेक्स में 'जावा' जोड़ता है 1 v.add (2, 'है') // जोड़ता है 'इंडेक्स 2 पर है' v.add (3, 'फन') // 'फन' को इंडेक्स 3 में जोड़ता है। System.out.println ('वेक्टर क्षमता' + v.capacity ()) v.trimToSize () System.out.println (है) 'वेक्टर क्षमता' + v.capacity ())}} है

आउटपुट


दूसरों के महत्वपूर्ण तरीके

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

विधि का नाम विधि का कार्य

बूलियन इम्प्टी ()

जाँचता है कि तत्व मौजूद हैं या नहीं

बूलियन में शामिल (ऑब्जेक्ट ओ)

एक विशिष्ट तत्व के अस्तित्व की जांच करने के लिए उपयोग किया जाता है, ओ कहें

int indexOf (ऑब्जेक्ट ओ)

जावा में लकड़हारा क्या है

यह तत्व ओ के सूचकांक को वापस करता है

शून्य निष्कासन (int s, int e)

सदिश से शुरू होने वाले तत्वों को समाप्त करता है और (ई -1) से समाप्त होता है

शून्य स्पष्ट ()

सभी तत्वों को निकालता है

शून्य सुनिश्चितता (int c)

यह सी द्वारा क्षमता बढ़ाता है

शून्य सेट करें (int s)

यह आकार को s पर सेट करता है। यदि s> आकार, अतिरिक्त क्षमता शून्य मानों से भरा है। अगर एस

ऑब्जेक्ट एलिमेंट (इंट)

अनुक्रमणिका संख्या a पर मौजूद तत्व देता है

ऑब्जेक्ट सेट (int, ऑब्जेक्ट o)

सूचकांक में मौजूद तत्व को दिए गए तत्व o से बदल देता है

ऑब्जेक्ट [] toArray ()

एक सरणी देता है जिसमें वेक्टर के समान तत्व होते हैं

ऑब्जेक्ट क्लोन ()

वेक्टर ऑब्जेक्ट कॉपी किया गया है

बूलियन addAll (संग्रह सी)

संग्रह सी के सभी तत्वों को वेक्टर में जोड़ता है

बूलियन addAll (int a, संग्रह c)

संग्रह के सभी तत्वों को सम्मिलित करता है निर्दिष्ट सूचकांक में वेक्टर से c

बूलियन अनुरक्षण (संग्रह सी)

वेक्टर के सभी तत्वों को बनाए रखता है जो संग्रह c में भी मौजूद हैं

सूची उप सूची (इंट एस, इंट ई)

तत्वों को सूची वस्तु के रूप में लौटाता है, एस से शुरू होता है और वेक्टर से (ई -1) के साथ समाप्त होता है।

जैसा कि हर अच्छी चीज का अंत होता है, वैसे ही वैक्स पर हमारा ब्लॉग है । हमें उम्मीद है कि हम इस ब्लॉग में जावा वैक्टर के सभी पहलुओं को कवर करने में सक्षम थे और आप वैक्टर के संबंध में कुछ ज्ञान इकट्ठा करने में सक्षम थे।

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

ssis ट्यूटोरियल स्टेप बाई स्टेप

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

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