जावा मधील अॅरेलिस्ट आणि वेक्टर दरम्यान फरक
सामग्री
अॅरेलिस्ट आणि वेक्टर हे दोन्ही संकलन फ्रेमवर्क वर्गीकरण अंतर्गत वर्ग आहेत. अॅरेलिस्ट आणि वेक्टर हे दोन्ही ऑब्जेक्ट्स चे डायनॅमिक अॅरे तयार करण्यासाठी वापरले जातात जेथे आवश्यकतेनुसार अॅरे आकारात वाढू शकते. अॅरेलिस्ट आणि वेक्टरला वेगळे करणारे दोन मूलभूत फरक आहेत ते म्हणजे वेक्टर लेगसी क्लासेसचे आहेत जे नंतर संग्रह वर्गांचे समर्थन करण्यासाठी पुन्हा तयार केले गेले, तर अॅरेलिस्ट एक मानक संग्रह वर्ग आहे. दुसरा महत्त्वाचा फरक म्हणजे अॅरेलिस्ट दुसरीकडे संकालित न केलेली आहे; वेक्टर समक्रमित आहे.
खाली दर्शविलेले तुलना चार्टच्या मदतीने आम्ही काही इतर मतभेदांचा अभ्यास करूया.
- तुलना चार्ट
- व्याख्या
- मुख्य फरक
- समानता
- निष्कर्ष
तुलना चार्ट
तुलनासाठी आधार | अॅरेलिस्ट | वेक्टर |
---|---|---|
मूलभूत | अॅरेलिस्ट वर्ग संकालित केलेला नाही. | वेक्टर वर्ग समक्रमित केला आहे. |
लेगसी वर्ग | अॅरेलिस्ट हा एक मानक संग्रह वर्ग आहे. | वेक्टर हा लेगसी वर्ग आहे, जो संग्रह वर्गास समर्थन देण्यासाठी पुन्हा अभियंता आहे. |
वर्ग घोषणा | वर्ग अॅरेलिस्ट | वर्ग वेक्टर |
रीलोकेशन | निर्दिष्ट नसताना अॅरेलिस्टच्या अर्ध्या आकाराने वाढ केली जाते. | निर्दिष्ट नसल्यास, वेक्टरच्या आकारात दुप्पट वाढ केली जाते. |
कामगिरी | अॅरेलिस्ट अनइन्क्रॉन्झाइड असल्याने, वेक्टरपेक्षा वेगवान ऑपरेट करते. | वेक्टर समक्रमित झाल्यामुळे ते अॅरेलिस्टपेक्षा हळू चालविते. |
गणना / Iterator | अॅरेलिस्टमध्ये अॅरेलिस्टमध्ये संग्रहित वस्तू ओलांडण्यासाठी आयटरटर इंटरफेसचा वापर केला जातो. | वेक्टर मध्ये संग्रहित वस्तू ओलांडण्यासाठी वेक्टर एन्यूमेरेशन तसेच आयटरटर इंटरफेसचा वापर करते. |
अॅरेलिस्टची व्याख्या
अॅरेलिस्ट मानक संग्रह वर्गाच्या यादीशी संबंधित आहे. एरेलिस्ट हा वर्ग आत परिभाषित केला आहे java.util पॅकेज, ते विस्तारित करते अॅबस्ट्रॅक्टलिस्ट वर्ग जो एक मानक संग्रह वर्ग देखील आहे आणि तो अंमलात आणतो यादी, संग्रह इंटरफेसमध्ये परिभाषित इंटरफेस. जावामध्ये, मानक अॅरे नेहमी निश्चित लांबीचा असतो. याचा अर्थ एकदा तयार; ते गतीशीलपणे आकारात वाढत किंवा संकुचित होत नाही. तर, आपण वापरत असलेल्या अॅरेच्या लांबीबद्दल आपल्याला पूर्वीचे ज्ञान असले पाहिजे. परंतु, कधीकधी असे होऊ शकते की रनटाइमवर आवश्यक लांबी प्रकट झाली असेल तर अशा प्रकारच्या जावा हाताळण्यासाठी जावाने अॅरेलिस्टची ओळख केली.
अॅरेलिस्ट हा अॅरेच्या गतिशील निर्मितीसाठी वापरलेला वर्ग आहे ज्यामध्ये ऑब्जेक्ट्सचे संदर्भ असतात. आवश्यकतेनुसार हा अॅरे आकारात वाढू शकतो. वर्ग घोषणा खालीलप्रमाणे आहेः
वर्ग अॅरेलिस्ट येथे, अॅरे असलेल्या वस्तूंचा प्रकार निर्दिष्ट करते. तयार केलेला अॅरे बदलत्या लांबीचा असतो आणि ऑब्जेक्ट्सला यादीमधून जोडले किंवा काढले जाते तेव्हा ते आकारात वाढते आणि कमी होते. अॅरेलिस्ट समक्रमित केलेली नाही म्हणजे एकाच वेळी एकापेक्षा जास्त थ्रेड अॅरेवर कार्य करू शकतात. उदाहरणार्थ, जर एक धागा अॅरेमध्ये ऑब्जेक्ट संदर्भ जोडत असेल तर आणि दुसरा धागा त्याच अॅरेमधून ऑब्जेक्ट संदर्भ त्याच वेळी काढत असेल. अॅरेलिस्ट क्लासचा वापर करून डायनॅमिक अॅरेची निर्मितीः अॅरेलिस्ट वरील कोडमध्ये आपण हे पाहू शकता; मी स्ट्रिंग टाईपच्या ऑब्जेक्ट्सची अॅरे तयार केली. मी अॅरे () पद्धत वापरुन अॅरे एस 1 मध्ये काही ऑब्जेक्ट्स जोडली आणि नंतर रिमूव्ह () मेथड वापरून काही ऑब्जेक्ट्स डिलीट केल्या. आपण अॅरेचा प्रारंभिक आकार निर्दिष्ट न केल्यास आपण ते पाहू शकता की ते 0 0 लांबीचे असेल. जसे आपण घटक जोडता आणि हटवता तसे अॅरे वाढत असताना आणि आकाराने संकुचित झाल्याचे आपण पाहू शकता. वेक्टर हा एक लेगसी वर्ग आहे जो संग्रह फ्रेमवर्क श्रेणीरचनामधील संग्रह वर्गास समर्थन देण्यासाठी पुन्हा तयार केला जातो. मध्ये वेक्टर वर्ग देखील परिभाषित केला आहे java.util संकुल, द्वारे वाढविले अॅबस्ट्रॅक्टलिस्ट वर्ग आणि अंमलबजावणी यादी इंटरफेस. वेक्टर वर्ग खालीलप्रमाणे घोषित केला आहे: वर्ग वेक्टर येथे E, अॅरे मध्ये संग्रहित होणार्या ऑब्जेक्टचा प्रकार निश्चित करते. वेक्टर क्लास वापरुन तयार केलेला अॅरे चल लांबीचा आहे. वेतन वाढ निर्दिष्ट न केल्यास तो आकारात दुप्पट वाढतो. व्हेक्टरचा वापर करून अॅरेची निर्मिती समजून घेऊया. वेक्टर वरील कोडमधे तुम्ही हे पाहू शकता की स्ट्रिंग ऑब्जेक्ट्सचा अॅरे घोषित करताना मी वेक्टरच्या कन्स्ट्रक्टरमध्ये अनुक्रमे आकार आणि वाढीव मूल्यांचा उल्लेख केला आहे. म्हणूनच, तुम्ही पाहु शकता की अॅरेची मर्यादा पूर्ण झाल्यावर ती कन्स्ट्रक्शनला घोषित करताना देण्यात आलेल्या किंमतीद्वारे वाढते. मी असे सांगून निष्कर्ष काढतो की अॅरेलिस्टचा वापर वेक्टर वापरण्यापेक्षा अधिक चांगला आहे कारण तो वेगवान आणि चांगले करतो.
वेक्टर व्याख्या
समानता:
निष्कर्ष: