30 top java collections interview questions with answers
इस ट्यूटोरियल में आपके लिए उत्तर और उदाहरणों के साथ सबसे अधिक बार पूछे जाने वाले जावा संग्रह साक्षात्कार प्रश्न की एक सूची शामिल है :
जावा का मुख्य एपीआई जावा कलेक्शंस फ्रेमवर्क है। यह इस प्रोग्रामिंग भाषा की मौलिक अवधारणा का समर्थन करता है। यदि आप एक जावा डेवलपर बनना चाहते हैं, तो आपको इन मुख्य अवधारणाओं के बारे में अच्छी तरह से पता होना चाहिए।
जावा संग्रह का क्षेत्र अत्यंत विस्तृत है और एक साक्षात्कार में कई प्रश्न पूछे जा सकते हैं। यहां हमने कई प्रासंगिक प्रश्नों की एक सूची एकत्र की है जो आपसे आपके साक्षात्कार में पूछे जा सकते हैं।
=> जावा प्रशिक्षण ट्यूटोरियल के ए-जेड को देखने के लिए यहां देखें
आप क्या सीखेंगे:
जावा संग्रह साक्षात्कार प्रश्न
Q # 1) जावा कलेक्शंस फ्रेमवर्क की व्याख्या करें।
उत्तर: जावा कलेक्शंस फ्रेमवर्क एक आर्किटेक्चर है जो वस्तुओं के समूह को प्रबंधित करने और संग्रहीत करने में मदद करता है। इसके साथ, डेवलपर्स प्रीपैक्ड डेटा संरचनाओं तक पहुंच सकते हैं और साथ ही एल्गोरिदम के उपयोग के साथ डेटा में हेरफेर कर सकते हैं।
जावा संग्रह में इंटरफ़ेस, और कक्षाएं शामिल हैं, जो इंटरफ़ेस और कक्षाओं के साथ-साथ खोज, हटाने, प्रविष्टि, सॉर्टिंग आदि जैसे संचालन कार्यों का समर्थन करते हैं, जावा संग्रह में एल्गोरिदम के साथ-साथ जोड़तोड़ में मदद मिलती है।
Q # 2) जावा कलेक्शंस के क्या फायदे हैं?
उत्तर:
जावा कलेक्शंस के लाभ हैं:
- हमारे संग्रह कक्षाओं को लागू करने के बजाय, यह मुख्य संग्रह कक्षाओं का उपयोग करता है, जिससे इसके विकास के लिए आवश्यक प्रयास कम हो जाते हैं।
- यह संग्रह ढांचे की कक्षाओं का उपयोग करता है जो अच्छी तरह से परीक्षण किए जाते हैं। इसलिए, इसकी कोड गुणवत्ता को बढ़ाया जाता है।
- यह कोड रखरखाव में प्रयास को कम करता है।
- Java Collection Framework इंटरऑपरेबल और पुन: प्रयोज्य है।
Q # 3) आप जावा में संग्रह के पदानुक्रम के बारे में क्या जानते हैं?
उत्तर:
(छवि स्रोत )
Q # 4) हमें Java Collection के मूल इंटरफेस के बारे में बताएं।
उत्तर:
नीचे सूचीबद्ध जावा संग्रह ढांचे के बुनियादी इंटरफेस हैं।
संग्रह: यह संग्रह पदानुक्रम का आधार है और इसके तत्वों का प्रतिनिधित्व करता है। हालाँकि, Java संग्रह का कोई प्रत्यक्ष आवेदन प्रदान नहीं करता है। इसके अलावा, अधिकांश जावा संग्रह इस इंटरफ़ेस से आते हैं।
सेट: यह डुप्लिकेट तत्वों को पकड़ नहीं सकता है क्योंकि यह गणितीय सेट का अमूर्त मॉडल है। जैसा कि नाम से पता चलता है, यह सेट का प्रतिनिधित्व करता है, उदाहरण के लिए, ताश के पत्तों का एक डेक।
सूची: यह डुप्लिकेट तत्वों को पकड़ सकता है और एक ऑर्डर किया हुआ संग्रह है। आप इसमें किसी भी तत्व तक पहुंचने के लिए इसके सूचकांक का उपयोग कर सकते हैं। सूची एक व्यवस्था की तरह है, एक सरणी, एक गतिशील लंबाई के साथ।
ये Java Collection के कुछ इंटरफेस हैं। हालाँकि, कुछ और इंटरफेस हैं और साथ ही नीचे दिखाए गए हैं।
- पंक्ति
- विपंक्ति
- इटरेटर
- निष्क्रिय करने योग्य
- सॉर्टसेटसेट
- सूची बनाने वाला।
क्यू # 5) क्यों संग्रहणीय और क्लोन करने योग्य इंटरफेस संग्रह द्वारा विस्तारित नहीं हैं इंटरफेस?
उत्तर: संग्रह इंटरफ़ेस का कार्य तत्वों नामक एक समूह को निर्दिष्ट करना है। संग्रह का कार्यान्वयन यह तय करता है कि तत्वों को कैसे बनाए रखा जाएगा। उदाहरण के लिए, सूची कार्यान्वयन डुप्लिकेट तत्वों की अनुमति देते हैं लेकिन कार्यान्वयन लागू नहीं करते हैं।
कई कार्यान्वयन सार्वजनिक क्लोनिंग के लिए एक विधि है। लेकिन सभी संग्रह कार्यान्वयन में इसे शामिल करना व्यावहारिक नहीं है क्योंकि संग्रह सार है और कार्यान्वयन सभी मामलों में है।
क्रमबद्धता और क्लोनिंग दोनों के अर्थ और प्रभाव मूल कार्यान्वयन के साथ काम करते समय समझ में आता है। इसलिए, यह तय करना वास्तविक कार्यान्वयन पर निर्भर करता है कि क्या यह सिलसिलेवार या क्लोन किया जा सकता है और कैसे।
और जानें = >> जावा में मार्कर इंटरफ़ेस: सीरियल योग्य और क्लोन करने योग्य
इसीलिए हर क्रियान्वयन में क्रमबद्धता और प्रतिरूपण शामिल करना बहुत अधिक लचीला नहीं है और यह प्रतिबंधात्मक है।
Q # 6) जावा कलेक्शन फ्रेमवर्क में Iterator से आप क्या समझते हैं?
उत्तर: सिम एरे में, हम प्रत्येक तत्व तक पहुंचने के लिए लूप का उपयोग कर सकते हैं। जब एक संग्रह में तत्वों तक पहुंचने के लिए एक समान दृष्टिकोण की आवश्यकता होती है, तो हम पुनरावृत्तियों के लिए जाते हैं। Iterator एक निर्माण है जिसका उपयोग संग्रह वस्तुओं के तत्वों तक पहुंचने के लिए किया जाता है।
जावा में, Iterators ऑब्जेक्ट्स हैं जो संग्रह फ्रेमवर्क के 'Iterator' इंटरफ़ेस को लागू करते हैं। यह इंटरफ़ेस java.util पैकेज का एक हिस्सा है।
Iterators की कुछ विशेषताएं हैं:
- Iterators का उपयोग संग्रह वस्तुओं को पार करने के लिए किया जाता है।
- Iterators को 'Universal Java Cursor' के रूप में जाना जाता है क्योंकि हम सभी संग्रहों के लिए समान Iterator का उपयोग कर सकते हैं।
- Iterators संग्रह पढ़ने के अलावा 'पढ़ें' और 'निकालें' संचालन प्रदान करते हैं।
- चूंकि वे सार्वभौमिक हैं और सभी संग्रहों के साथ काम करते हैं, Iterators को लागू करना आसान है।
जावा संग्रह प्रश्न सूची
Q # 7) क्या आप सूची इंटरफ़ेस के उपयोग से अवगत हैं?
(छवि स्रोत )
उत्तर: प्रविष्टि इंटरफ़ेस का उद्देश्य सम्मिलन के क्रम को बनाए रखना है। यह डुप्लिकेट मानों के भंडारण की भी अनुमति देता है।
यह विभिन्न तरीकों के साथ इसके सूचकांक के आधार पर तत्वों के सुचारू हेरफेर में मदद करता है। ArrayList, वेक्टर, Stack, और LinkedList विभिन्न वर्ग हैं जो सूची इंटरफ़ेस को लागू करते हैं।
Q # 8) आप जावा में ArrayList के बारे में क्या समझते हैं?
उत्तर: सूची इंटरफ़ेस का कार्यान्वयन ArrayList है। यह गतिशील रूप से सूची से तत्वों को जोड़ता या हटाता है और यह स्थितिगत पहुंच के साथ तत्वों का सम्मिलन भी प्रदान करता है। ArrayList डुप्लिकेट मानों की अनुमति देता है और तत्वों की संख्या प्रारंभिक आकार से अधिक होने पर इसका आकार गतिशील रूप से बढ़ सकता है।
Q # 9) आप एक ArrayList में एक स्ट्रिंग ऐरे को कैसे बदलेंगे?
उत्तर: यह एक शुरुआती स्तर का प्रोग्रामिंग सवाल है जो एक साक्षात्कारकर्ता संग्रह उपयोगिता के अपने समझ की जांच करने के लिए कहता है। संग्रह और सारणी संग्रह फ्रेमवर्क की दो उपयोगिता वर्ग हैं जिन्हें साक्षात्कारकर्ता अक्सर रुचि रखते हैं।
संग्रह प्रकारों पर विशिष्ट कार्य करने के लिए संग्रह कुछ स्थिर कार्य प्रदान करते हैं। जबकि ऐरे में उपयोगिता कार्य हैं जो यह सरणी प्रकारों पर करता है।
//String array String() num_words = {'one', 'two', 'three', 'four', 'five'}; //Use java.util.Arrays class to convert to list List wordList = Arrays.asList(num_words);
ध्यान दें कि स्ट्रिंग प्रकार के अलावा, आप अन्य प्रकार के Arrays का उपयोग ArrayList में बदलने के लिए भी कर सकते हैं।
उदाहरण के लिए,
//Integer array Integer() numArray = {10,20,30,40}; //Convert to list using Arrays class asList method List num_List = Arrays.asList(numArray);
Q # 10) Array को ArrayList और ArrayList से Array में कनवर्ट करें।
उत्तर: ArrayList को Array में बदलने के लिए, toArray () विधि का उपयोग किया जाता है- List_object.toArray (नया स्ट्रिंग (List_object.size ()))
जबकि ऐरलिस्ट () पद्धति का उपयोग ऐरे को ArrayList में परिवर्तित करने के लिए किया जाता है- Arrays.asList (आइटम)। AsList () एक स्थिर विधि है जहाँ सूची ऑब्जेक्ट पैरामीटर हैं।
Q # 11) एक लिंक्डलिस्ट क्या है और जावा में इसके कितने प्रकार समर्थित हैं?
(छवि स्रोत )
उत्तर: लिंक्डलिस्ट लिंक के अनुक्रम के साथ एक डेटा संरचना है जहां हर लिंक अगले लिंक से जुड़ा हुआ है।
तत्वों को संग्रहीत करने के लिए जावा में दो प्रकार के लिंक्डलिस्ट का उपयोग किया जाता है:
- एकल लिंक्डलिस्ट: यहां, प्रत्येक नोड अगले नोड के संदर्भ या पॉइंटर के साथ नोड के डेटा को संग्रहीत करता है।
- निस्संदेह लिंक्डलिस्ट: एक दोहरी लिंक्डलिस्ट दोहरे संदर्भों के साथ आता है, एक संदर्भ अगले नोड के लिए और दूसरा पिछले नोड के लिए।
Q # 12) BlockingQueue से आप क्या समझते हैं?
उत्तर: एक साधारण कतार में, हम जानते हैं कि जब भी कतार भर जाती है, हम कोई और आइटम नहीं डाल सकते हैं। इस स्थिति में, कतार बस एक संदेश देती है कि कतार भरी हुई है और बाहर निकल जाती है। एक समान मामला तब होता है जब कतार खाली होती है और कतार में हटाने के लिए कोई तत्व नहीं होता है।
डालने / हटाने के समय बस बाहर निकलने के बजाय, हम किस तरह से प्रतीक्षा कर सकते हैं जब तक कि हम आइटम को सम्मिलित या निकाल नहीं सकते?
इसका उत्तर कतार की भिन्नता से दिया जाता है 'अवरुद्ध कतार' । जब भी कतार पूर्ण कतार या चक्रव्यूह को खाली करने की कोशिश कर रही होती है, तो अवरुद्ध कतार में, अवरुद्ध करना सक्रिय करना होता है।
ब्लॉकिंग को निम्न आकृति में दिखाया गया है।
ब्लॉकिंग क्यू
इस प्रकार, एन्क्यू ऑपरेशन के दौरान, अवरुद्ध कतार तब तक प्रतीक्षा करेगी जब तक कि एक स्थान उपलब्ध न हो जाए ताकि एक आइटम को सफलतापूर्वक डाला जा सके। इसी तरह, डीक्यू ऑपरेशन में अवरोधक कतार तब तक प्रतीक्षा करेगी जब तक कि कोई आइटम ऑपरेशन के लिए उपलब्ध न हो जाए।
फुर्तीली विकृति पद्धति पर साक्षात्कार प्रश्न
ब्लॉकिंग कतार लागू करना ing BlockingQueue ’इंटरफ़ेस जो ue java.util.concurrent / पैकेज से संबंधित है। हमें याद रखना चाहिए कि BlockingQueue इंटरफ़ेस शून्य मान की अनुमति नहीं देता है। यदि यह अशक्त का सामना करता है, तो यह NullPointerException को फेंकता है।
Q # 13) जावा में प्राथमिकता कतार क्या है?
उत्तर: जावा में एक प्राथमिकता कतार डेटा संरचनाओं को स्टैक या कतार के समान है। यह जावा में एक सार डेटा प्रकार है और इसे java.util पैकेज में प्रायोरिटी क्यू वर्ग के रूप में लागू किया जाता है। प्राथमिकता कतार में एक विशेष विशेषता है कि प्राथमिकता कतार में प्रत्येक आइटम की प्राथमिकता है।
प्राथमिकता कतार में, उच्च प्राथमिकता वाला आइटम कम प्राथमिकता वाले आइटम से पहले सर्वर है।
प्राथमिकता कतार में सभी वस्तुओं को प्राकृतिक आदेश के अनुसार क्रमबद्ध किया जाता है। हम प्राथमिकता कतार ऑब्जेक्ट बनाने के समय एक तुलनित्र प्रदान करके कस्टम ऑर्डर के अनुसार तत्वों को भी ऑर्डर कर सकते हैं।
इंटरफ़ेस साक्षात्कार प्रश्न सेट करें
Q # 14) सेट इंटरफ़ेस का उपयोग क्या है? इसे लागू करने वाली कक्षाओं के बारे में बताएं इंटरफेस।
उत्तर: सेट इंटरफ़ेस गणितीय सेट को आकार देने के लिए सेट सिद्धांत में उपयोग किया जाता है। यह सूची इंटरफ़ेस के समान है और फिर भी इससे थोड़ा अलग है। सेट इंटरफ़ेस एक आदेशित संग्रह नहीं है, इसलिए जब आप तत्वों को निकाल रहे हैं या जोड़ रहे हैं तो कोई संरक्षित क्रम नहीं है।
मुख्य रूप से, यह डुप्लिकेट तत्वों का समर्थन नहीं करता है इस प्रकार सेट इंटरफ़ेस में प्रत्येक तत्व अद्वितीय है।
यह अलग-अलग कार्यान्वयन होने पर भी सेट उदाहरणों की सार्थक तुलना करने की अनुमति देता है। इसके अलावा, यह बराबरी और हैशकोड के संचालन के कार्यों पर अधिक पर्याप्त अनुबंध रखता है। यदि दो उदाहरणों में समान तत्व हैं, तो वे समान हैं।
इन सभी कारणों के लिए, सेट इंटरफ़ेस में सूची जैसे तत्व सूचकांक आधारित संचालन नहीं होते हैं। यह केवल संग्रह इंटरफ़ेस विरासत में मिली विधियों का उपयोग करता है। ट्रीसेट, एनुमसेट, लिंक्डहाशसेट और हैशसेट लागू इंटरफ़ेस सेट करता है।
Q # 15) मैं हैशसेट और ट्रीसेट में एक अशक्त तत्व जोड़ना चाहता हूं। क्या मैं?
उत्तर: आप ट्रीसेट में कोई भी अशक्त तत्व नहीं जोड़ सकते क्योंकि यह तत्व भंडारण के लिए नेविगेबल मैप का उपयोग करता है। लेकिन आप हाशसेट में सिर्फ एक जोड़ सकते हैं। सॉर्ट किए गए मैप में नल कुंजियाँ नहीं दी जाती हैं और नेविगेबल मैप इसका सबसेट है।
यही कारण है कि आप ट्रीसेट में एक अशक्त तत्व नहीं जोड़ सकते हैं, यह हर बार जब आप ऐसा करने का प्रयास करते हैं तो NullPointerException के साथ आएगा।
Q # 16) लिंक्डहैशसेट के बारे में आप क्या जानते हैं?
उत्तर: LinkedHashSet HashSet का उपवर्ग है और यह सेट इंटरफ़ेस को लागू करता है। हैशसेट के एक आदेशित रूप के रूप में, यह इसमें शामिल सभी तत्वों में एक दोगुनी-जुड़ी सूची का प्रबंधन करता है। यह सम्मिलन के क्रम को बरकरार रखता है और अपने मूल वर्ग की तरह, यह केवल अद्वितीय तत्वों को वहन करता है।
Q # 17) जिस तरह से हैशसेट तत्वों को संग्रहीत करता है, उसके बारे में बात करें।
उत्तर: HashMap कुंजी-मूल्यों के जोड़े को संग्रहीत करता है लेकिन चाबियाँ अद्वितीय होनी चाहिए। मैप का यह फीचर हैशसेट द्वारा यह सुनिश्चित करने के लिए उपयोग किया जाता है कि हर तत्व अद्वितीय है।
हशसेट में मानचित्र की घोषणा निम्नानुसार दिखाई देती है:
private transient HashMapmap; //This is added as value for each key private static final Object PRESENT = new Object();
HashSet में संग्रहीत तत्वों को मानचित्र में एक कुंजी के रूप में संग्रहीत किया जाता है और ऑब्जेक्ट को एक मूल्य के रूप में प्रस्तुत किया जाता है।
Q # 18) एम्प्टीसेट () विधि को समझाइए।
उत्तर: एम्प्टीसेट () विधि शून्य तत्वों को हटा देती है और खाली अपरिवर्तनीय सेट लौटा देती है। यह अपरिवर्तनीय सेट धारावाहिक है। एम्प्टीसेट () की विधि घोषणा है- सार्वजनिक स्थैतिक अंतिम सेट को खाली करें ()।
मानचित्र इंटरफ़ेस साक्षात्कार प्रश्न
Q # 19) मैप इंटरफेस के बारे में बताएं।
उत्तर: मैप इंटरफेस तेजी से देखने के लिए डिज़ाइन किया गया है और यह कुंजी-मानों के जोड़े के रूप में तत्वों को संग्रहीत करता है। जैसा कि प्रत्येक कुंजी यहां अद्वितीय है, यह केवल एक मान से जोड़ता है या मैप करता है। की-वैल्यूज़ की इन जोड़ियों को मैप एंट्रीज़ कहा जाता है।
इस इंटरफ़ेस में, अद्वितीय कुंजी के आधार पर पुनर्प्राप्ति, सम्मिलन और तत्वों को हटाने के लिए विधि हस्ताक्षर हैं। यह एक शब्दकोश की तरह कुंजी-मूल्य संघों को मैप करने के लिए एक आदर्श उपकरण बनाता है।
Q # 20) मानचित्र संग्रह इंटरफ़ेस का विस्तार नहीं करता है। क्यों?
उत्तर: संग्रह इंटरफ़ेस वस्तुओं का संचय है और इन वस्तुओं को निर्दिष्ट पहुंच के तंत्र के साथ संरचनात्मक रूप से संग्रहीत किया जाता है। जबकि मैप इंटरफ़ेस कुंजी-मूल्य जोड़े की संरचना का अनुसरण करता है। संग्रह इंटरफ़ेस की ऐड मेथड मैप इंटरफ़ेस की पुट विधि का समर्थन नहीं करता है।
यही कारण है कि मैप संग्रह इंटरफ़ेस का विस्तार नहीं करता है, लेकिन फिर भी, यह जावा संग्रह फ्रेमवर्क का एक महत्वपूर्ण हिस्सा है।
Q # 21) HashMap जावा में कैसे काम करता है?
उत्तर: HashMap मानचित्र पर आधारित एक संग्रह है और इसकी वस्तुओं में कुंजी-मूल्य जोड़े शामिल हैं। एक HashMap आमतौर पर, या द्वारा चिह्नित है। प्रत्येक हैशमप तत्व को अपनी कुंजी का उपयोग करके एक्सेस किया जा सकता है।
एक हाशप “हैशिंग” के सिद्धांत पर काम करता है। हैशिंग तकनीक में, एक लंबी स्ट्रिंग को a हैश फ़ंक्शन ’द्वारा एक छोटे स्ट्रिंग में बदल दिया जाता है, जो कि एक एल्गोरिथ्म के अलावा कुछ नहीं है। तेजी से खोज और कुशल अनुक्रमण में छोटे स्ट्रिंग एड्स।
Q # 22) IdentityHashMap, WeakHashMap, और ConcurrentHashMap की व्याख्या करें।
उत्तर:
IdentityHashMap हाशपॅप की तरह है। अंतर यह है कि तत्वों की तुलना करते समय, IdentityHashMap संदर्भ समानता का उपयोग करता है। यह एक पसंदीदा मानचित्र कार्यान्वयन नहीं है और यद्यपि यह मानचित्र इंटरफ़ेस निष्पादित करता है, यह जानबूझकर मानचित्र के सामान्य अनुबंध का पालन करने में विफल रहता है।
इसलिए, वस्तुओं की तुलना करते समय, यह समान पद्धति के उपयोग को अधिकृत करता है। इसे ऐसे दुर्लभ मामलों में उपयोग के लिए डिज़ाइन किया गया है जहाँ किसी को संदर्भ-समानता शब्दार्थ की आवश्यकता होती है।
WeakHashMap कार्यान्वयन केवल अपनी कुंजियों के कमजोर संदर्भों को संग्रहीत करता है। WeakHashMap के बाहर इसकी कुंजी का कोई संदर्भ नहीं होने पर यह कुंजी-मूल्य जोड़ी के कचरा संग्रह की अनुमति देता है।
यह मुख्य रूप से उन प्रमुख वस्तुओं के साथ उपयोग किया जाता है जहां ऑब्जेक्ट पहचान के लिए परीक्षण == ऑपरेटर का उपयोग करके इसकी बराबर विधियों द्वारा किया जाता है।
समवर्ती हाशपा दोनों समवर्ती नक्शे और सीरियल इंटरफ़ेस को लागू करता है। यह HashMap का उन्नत, उन्नत संस्करण है क्योंकि यह बहुपरत वातावरण के साथ अच्छी तरह से काम नहीं करता है। जब HashMap की तुलना में, यह एक उच्च प्रदर्शन दर है।
Q # 23) हाशप के लिए एक अच्छी कुंजी की गुणवत्ता क्या है?
उत्तर: यह समझने में कि हाशप कैसे काम करता है, यह जानना आसान है कि वे मुख्य रूप से बराबर और प्रमुख वस्तुओं के हैशकोड तरीकों पर निर्भर करते हैं। इसलिए, एक अच्छी कुंजी को एक ही हैशकोड बार-बार देना चाहिए, चाहे वह कितनी ही बार क्यों न हो।
उसी तरह, जब समान विधि के साथ तुलना की जाती है, तो समान कुंजियों को सही लौटना चाहिए और विभिन्न कुंजियों को गलत वापस करना चाहिए। इसीलिए हाशप की कुंजियों के लिए सबसे अच्छा उम्मीदवार अपरिवर्तनीय वर्ग कहलाता है।
Q # 24) ट्रीपैप का उपयोग कब कर सकते हैं?
(छवि स्रोत )
उत्तर: ट्री मैप, HashMap के एक विशेष रूप के रूप में, डिफ़ॉल्ट रूप से कुंजियों के क्रम को बनाए रखता है 'प्राकृतिक आदेश', जो कि हैशपे में गायब है। आप इसे कुछ कुंजी के साथ वस्तुओं को सॉर्ट करने के लिए उपयोग कर सकते हैं।
उदाहरण के लिए, यदि आप किसी शब्दकोश को वर्णानुक्रम में लागू करना चाहते हैं और छापना चाहते हैं, तो आप ट्री मैप को ट्रीसेट के साथ उपयोग कर सकते हैं। यह अपने आप छँटेगा। बेशक, आप ऐसा मैन्युअल रूप से कर सकते थे, लेकिन ट्रीपाउप के उपयोग से काम अधिक कुशलता से किया जाएगा। यदि आपके लिए रैंडम एक्सेस महत्वपूर्ण है, तो आप इसका उपयोग भी कर सकते हैं।
प्रश्नों के बीच अंतर
Q # 25) संग्रह और संग्रह के बीच अंतर क्या है?
उत्तर:
संग्रह | संग्रह |
---|---|
हम किसी सेट को पार करने के लिए लिस्टाइटर का उपयोग नहीं कर सकते। | ListIterator किसी भी दिशा में सूची को पार कर सकता है। |
यह एक इंटरफ़ेस है। | यह वर्ग है। |
संग्रह एकल इकाई के रूप में वस्तुओं के एक समूह का प्रतिनिधित्व करता है। | संग्रह वस्तुओं के लिए उपयोगिता के विभिन्न तरीकों को परिभाषित करता है। |
यह कलेक्शन फ्रेमवर्क का रूट इंटरफ़ेस है। | संग्रह एक उपयोगिता वर्ग है। |
यह कलेक्शन फ्रेमवर्क की डेटा संरचनाओं को प्राप्त करता है। | डेटा संरचना में हेरफेर करने के लिए संग्रह में कई अलग-अलग स्थिर तरीके होते हैं। |
Q # 26) ArrayList से Array अलग कैसे है?
उत्तर:
ऐरे और आर्लिस्ट के बीच अंतर नीचे दिए गए हैं:
सरणी | सारणी सूची |
---|---|
सरणी एक दृढ़ता से टाइप किया गया वर्ग है। | ArrayList एक शिथिल टाइप की क्लास है। |
ऐरे को गतिशील रूप से नहीं बदला जा सकता है, इसका आयाम स्थिर है। | ArrayList को गतिशील रूप से आकार दिया जा सकता है। |
तत्वों की बॉक्सिंग और बॉक्सिंग की आवश्यकता नहीं है। | ArrayList को मुक्केबाजी और तत्वों के अनबॉक्सिंग की आवश्यकता होती है। |
Q # 27) ArrayList और LinkedList के बीच अंतर करना।
उत्तर:
सारणी सूची | लिंक्ड सूची |
---|---|
ArrayList तत्वों को संग्रहीत करने के लिए आंतरिक रूप से गतिशील सरणी का उपयोग करता है। | लिंक्डलिस्ट दोगुनी लिंक की गई सूची को लागू करता है। |
तत्वों का ArrayList हेरफेर धीमा है। | लिंक्डलिस्ट अपने तत्वों में बहुत तेजी से हेरफेर करता है। |
ArrayList पूरी तरह से एक सूची के रूप में कार्य कर सकता है। | लिंक्डलिस्ट सूची और कतार दोनों के रूप में कार्य कर सकता है। |
भंडारण और डेटा तक पहुँचने के लिए उपयोगी है। | डेटा में हेरफेर करने के लिए उपयोगी। |
Q # 28) Iterable Iterator से कैसे भिन्न है?
उत्तर:
निष्क्रिय करने योग्य | इटरेटर |
---|---|
यह Java.lang पैकेज इंटरफ़ेस है। | यह Java.util पैकेज इंटरफ़ेस है। |
केवल एक सार विधि पैदावार जिसे Iterator के रूप में जाना जाता है। | यह दो सार तरीकों- hasNext और next के साथ आता है। |
उन तत्वों की एक श्रृंखला का प्रतिनिधित्व करता है जिन्हें ट्रैवर्स किया जा सकता है। | पुनरावृत्ति स्थिति वाली वस्तुओं के लिए खड़ा है। |
Q # 29) सेट और सूची के बीच अंतर बताएं।
उत्तर:
सेट | सूची |
---|---|
लागू करें सेट इंटरफ़ेस सेट करें। | सूची सूची इंटरफ़ेस को लागू करती है। |
सेट तत्वों का एक अनियंत्रित सेट है। | सूची तत्वों का एक क्रमबद्ध सेट है। |
प्रविष्टि के दौरान तत्वों का क्रम सेट नहीं रहता है। | प्रविष्टि के दौरान तत्वों के क्रम को बरकरार रखता है। |
सेट डुप्लिकेट मानों की अनुमति नहीं देता है। | सूची डुप्लिकेट मानों की अनुमति देती है। |
सेट में कोई भी विरासत वर्ग नहीं है। | सूची में वेक्टर, एक विरासत वर्ग शामिल है। |
सेट केवल एक शून्य मान की अनुमति देता है। | सूची में अशक्त मूल्यों की संख्या पर कोई प्रतिबंध नहीं। |
Q # 30) क्यू और स्टैक के बीच अंतर क्या है?
उत्तर:
पंक्ति | ढेर |
---|---|
कतार पहले-पहले-बाहर (FIFO) दृष्टिकोण के सिद्धांत पर काम करती है। | स्टैक लास्ट-इन-फर्स्ट-आउट (LIFO) आधार पर काम करता है। |
कतार में सम्मिलन और विलोपन अलग-अलग छोरों पर होते हैं। | सम्मिलन और विलोपन एक ही छोर से किया जाता है जिसे स्टैक के शीर्ष कहा जाता है। |
एन्क्यू इंसर्शन का नाम है और डीक्यू तत्वों का विलोपन है। | पुश सम्मिलन है और पॉप स्टैक में तत्वों का विलोपन है। |
इसके दो बिंदु हैं- सूची के पहले तत्व (सामने) और एक अंतिम (पीछे)। | इसमें शीर्ष तत्व की ओर केवल एक सूचक इंगित किया गया है। |
Q # 31) सिंगनलिंकड लिस्ट और डाउनलिंकड लिस्ट एक दूसरे से कैसे अलग हैं?
उत्तर:
सिंगली लिंक्ड लिस्ट | संदेह से जुड़ी सूची |
---|---|
एकल लिंक की गई सूची के प्रत्येक नोड में अगले नोड के लिए एक डेटा और एक पॉइंटर होता है। | एक डबल लिंक की गई सूची में डेटा, अगले नोड के लिए एक पॉइंटर और पिछले नोड के लिए एक पॉइंटर होता है। |
अगले सूचक का उपयोग करके एकल-लिंक की गई सूची का पता लगाया जा सकता है। | पिछली और अगली पॉइंटर दोनों का उपयोग करके एक दोहरी लिंक की गई सूची का पता लगाया जा सकता है। |
एकल-लिंक की गई सूची की तुलना में एकल-लिंक की गई सूची कम जगह लेती है। | दोगुनी लिंक की गई सूची में बहुत सारी मेमोरी स्पेस होती है। |
तत्व का उपयोग बहुत कुशल नहीं है। | तत्व की पहुंच कुशल है। |
Q # 32) हाशपाट हैशटेबल से कैसे भिन्न है?
उत्तर:
हैश मैप | हैश तालिका |
---|---|
हैशपॉप सार वर्ग वर्ग विरासत में मिला है | हैशटेबल ने डिक्शनरी क्लास ली है। |
HashMap सिंक्रनाइज़ नहीं है। | हैशटेबल सिंक्रनाइज़ है। |
HashMap कई अशक्त मूल्यों की अनुमति देता है, लेकिन केवल एक अशक्त कुंजी है। | हैशटेबल एक शून्य मान या कुंजी की अनुमति नहीं देता है। |
HashMap तेजी से होता है। | हैशटेबल, हाशपा की तुलना में धीमा है। |
HashMap Iterator द्वारा ट्रैवर्स किया जा सकता है। | हैशटेबल का पता नहीं लगाया जा सकता है इटरेटर या एन्यूमरेटर का उपयोग करना। |
Q # 33) ArrayList और वेक्टर के बीच अंतर को सूचीबद्ध करें।
उत्तर:
सारणी सूची | वेक्टर |
---|---|
ArrayList गैर-सिंक्रनाइज़ है। | वेक्टर सिंक्रनाइज़ किया गया है। |
ArrayList एक विरासत वर्ग नहीं है। | वेक्टर एक विरासत वर्ग है। |
जब कोई तत्व अपने आकार से परे डाला जाता है, तो ArrayList, ArrayList के आकार में आधे से बढ़ जाता है। | जब कोई तत्व अपने आकार से परे डाला जाता है तो वेक्टर अपने आकार को दोगुना बढ़ा देता है। |
ArrayList थ्रेड-सुरक्षित नहीं है | वेक्टर एक धागा-सुरक्षित है। |
Q # 34) FailFast, Failsafe से कैसे अलग है?
उत्तर:
फेलफस्ट | सुरक्षा कम होना |
---|---|
पुनरावृति करते समय, संग्रह के किसी भी संशोधन की अनुमति नहीं है। | पुनरावृत्ति करते हुए संशोधन की अनुमति देता है। |
ट्रैवर्सिंग के लिए मूल संग्रह का उपयोग करता है। | मूल संग्रह की एक प्रति का उपयोग करता है। |
कोई अतिरिक्त मेमोरी की आवश्यकता नहीं है। | अतिरिक्त स्मृति की आवश्यकता है। |
समवर्ती फेंकता है। अपवाद। | कोई अपवाद नहीं फेंका गया है। |
निष्कर्ष
ये Java Collection Interview के प्रश्न आपको साक्षात्कार की तैयारी में मदद करेंगे। जावा कलेक्शंस इंटरव्यू के लिए आपकी तैयारी गहरी और व्यापक होनी चाहिए ताकि इन प्रश्नों का अध्ययन करें और अवधारणा को अच्छी तरह से समझ सकें।
ये प्रश्न न केवल आपके ज्ञान बल्कि आपके मन की उपस्थिति का भी परीक्षण करते हैं।
=> यहाँ सरल जावा प्रशिक्षण श्रृंखला देखें
अनुशंसित पाठ
- जावा ट्यूटोरियल फॉर बिगिनर्स: 100+ हैंड्स-ऑन जावा वीडियो ट्यूटोरियल
- जावा बेसिक्स: जावा सिंटैक्स, जावा क्लास और कोर जावा कॉन्सेप्ट
- साक्षात्कार प्रश्न और उत्तर
- ईटीएल परीक्षण साक्षात्कार प्रश्न और उत्तर
- 30 शीर्ष HTML साक्षात्कार प्रश्न और उत्तर (2021 सूची)
- शीर्ष 30+ लोकप्रिय ककड़ी साक्षात्कार प्रश्न और उत्तर
- शीर्ष 40 जावा 8 साक्षात्कार प्रश्न और उत्तर (सबसे महत्वपूर्ण)
- शीर्ष 30 SAS साक्षात्कार प्रश्न और उत्तर