java चेक - जावा संग्रह और संग्रह के बीच अंतर




इन वोट (16)

संग्रह एक इंटरफ़ेस है और संग्रह Java.util पैकेज में वर्ग है

जावा के Collection और Collections वर्गों के बीच क्या अंतर है?


संग्रह एक इंटरफ़ेस है जिसका उपयोग एक एकल एंटिटी के रूप में व्यक्तिगत वस्तु समूह का प्रतिनिधित्व करने के लिए किया जा सकता है।

संग्रह वस्तु के लिए कई उपयोगिता विधियों को परिभाषित करने के लिए संग्रह एक उपयोगिता वर्ग है।


संग्रह एक इंटरफ़ेस है जिसमें से अन्य वर्ग जैसे सूची, सेट निकाले जाते हैं। संग्रह ("एस" के साथ) एक उपयोगिता वर्ग है जिसमें संग्रह पर काम को आसान बनाने के लिए स्थिर तरीके हैं। Ex: Collections.sort ()


क्या आप java.sun.com/javase/6/docs/api/java/util/Collections.html क्लास बनाम उन क्लास के बारे में पूछ रहे हैं जो java.sun.com/javase/6/docs/api/java/util/Collection.html इंटरफेस को लागू करते हैं?

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

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


संग्रह जावा संग्रह ढांचे का एक रूट इंटरफेस है। संग्रह एक उपयोगिता वर्ग है जिसमें स्थिर विधियाँ हैं। उदाहरण कलेक्शंस.सोर्ट ()


हां, संग्रह एक उपयोगिता वर्ग है जो छंटाई जैसे कार्यों के लिए कई स्थिर तरीके प्रदान करता है ... जबकि संग्रह एक शीर्ष स्तर इंटरफ़ेस में।


संग्रह अधिकांश संग्रह वर्गों के लिए एक आधार इंटरफ़ेस है (यह जावा संग्रह ढांचे का मूल इंटरफ़ेस है) संग्रह एक उपयोगिता वर्ग है

कलेक्शंस क्लास एक यूटीलिटी क्लास है जिसमें स्टैटिक तरीके होते हैं। यह पॉलीमॉर्फिक एल्गोरिदम को लागू करता है जो संग्रह पर काम करते हैं।


संग्रह एक इंटरफ़ेस है जो एकल इकाई के रूप में व्यक्तिगत वस्तु के समूह का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।

संग्रह java.util में मौजूद एक उपयोगिता वर्ग है। संग्रह वस्तु के लिए कई उपयोगिता विधि (जैसे छँटाई, खोज) को परिभाषित करने के लिए पैकेज।


जावा डॉक्टर संग्रह के अनुसार है:

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

जहां संग्रह है:

इस वर्ग में विशेष रूप से स्थिर विधियाँ हैं जो संग्रह या रिटर्न संग्रह पर काम करती हैं। इसमें पॉलीमोर्फिक एल्गोरिदम शामिल हैं जो संग्रह पर काम करते हैं, "रैपर", जो एक निर्दिष्ट संग्रह द्वारा समर्थित एक नया संग्रह लौटाते हैं, और कुछ अन्य बाधाओं और समाप्त होते हैं।

संग्रह, जैसा कि इसके जावाडॉक कहते हैं, "संग्रह पदानुक्रम में रूट इंटरफ़ेस।" इसका मतलब है कि किसी भी रूप में कलेक्शन लागू करने वाला हर एक वर्ग जावा कलेक्शंस फ्रेमवर्क का हिस्सा है।

कलेक्शंस फ्रेमवर्क जावा की डेटा संरचना वर्गों (कार्यान्वयन विशिष्ट गुणों के साथ) का मूल कार्यान्वयन है जो वस्तुओं के एक समूह का प्रतिनिधित्व करते हैं जो किसी न किसी तरह एक दूसरे से संबंधित हैं और इस तरह एक संग्रह कहा जा सकता है।

कुछ कार्य करने के लिए संग्रह केवल एक उपयोगिता विधि वर्ग है, उदाहरण के लिए ऐसा करके अपने ArrayList उदाहरण में थ्रेड सुरक्षा जोड़ना:

सूची सूची = संग्रह। SynchronizedList (नई Arraylist ());

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


संग्रह एक उपयोगिता वर्ग है, जिसका अर्थ है कि यह उन तरीकों के एक समूह को परिभाषित करता है, जो सामान्य कार्य करते हैं, अक्सर पुन: उपयोग किए जाने वाले कार्य, जैसे किसी सूची को क्रमबद्ध करना, सूची को घुमाना, न्यूनतम मूल्य आदि का पता लगाना और इन सामान्य तरीकों को स्थैतिक दायरे में परिभाषित किया जाता है।

संग्रह एक इंटरफ़ेस है जो AbstractCollection द्वारा कार्यान्वित किया जाता है जो बदले में AbstractList, AbstractSet आदि द्वारा कार्यान्वित किया जाता है।

साथ ही, कलेक्शन क्लास में अपने संग्रह इंटरफेस के बत्तीस सुविधा कार्यान्वयन हैं, जो संग्रहणीय संग्रह, सिंक्रनाइज़ संग्रह प्रदान करते हैं। इन सभी कार्यान्वयनों को एक गैर-परिवर्तनीय वर्ग (java.util.Collections) में स्थिर कारखाने विधियों के माध्यम से निर्यात किया जाता है।

संदर्भ: प्रभावी जावा


Collection , जैसा कि इसके javadoc का कहना है, " संग्रह पदानुक्रम में रूट इंटरफ़ेस। " इसका मतलब है कि किसी भी रूप में Collection को लागू करने वाला प्रत्येक एकल वर्ग जावा संग्रह फ्रेमवर्क का हिस्सा है।

कलेक्शंस फ्रेमवर्क जावा की डेटा संरचना वर्गों ( कार्यान्वयन विशिष्ट गुणों के साथ ) का मूल कार्यान्वयन है जो वस्तुओं के एक समूह का प्रतिनिधित्व करते हैं जो किसी न किसी तरह एक दूसरे से संबंधित हैं और इस तरह एक संग्रह कहा जा सकता है।

कुछ कार्य करने के लिए Collections केवल एक उपयोगिता विधि वर्ग है, उदाहरण के लिए ऐसा करके अपने ArrayList उदाहरण में थ्रेड सुरक्षा जोड़ना:

List<MyObj> list = Collections.synchronizedList(new Arraylist<MyObj>());

मेरी राय में मुख्य अंतर यह है कि Collection आधार इंटरफ़ेस है जिसे आप अपने कोड में ऑब्जेक्ट के लिए एक प्रकार के रूप में उपयोग कर सकते हैं ( हालांकि मैं सीधे इसकी अनुशंसा नहीं करूंगा ) जबकि Collections सिर्फ Collections को संभालने के लिए उपयोगी संचालन प्रदान करता है।


Collections वर्ग एक उपयोगिता वर्ग है जिसमें कक्षाओं की वस्तुओं पर संचालन करने के लिए स्थिर तरीके हैं जो Collection इंटरफ़ेस को लागू करते हैं। उदाहरण के लिए, संग्रह में अधिकतम तत्व को खोजने के लिए तरीके हैं Collection.


संग्रह एक इंटरफेस है और यह सभी वर्गों और सेट, सूची और मानचित्र जैसे इंटरफेस के लिए एक रूट इंटरफ़ेस है ......... और सभी इंटरफेस संग्रह इंटरफ़ेस को लागू कर सकते हैं।

संग्रह एक ऐसा वर्ग है जो संग्रह इंटरफ़ेस को भी लागू कर सकता है ......।


संग्रह : एक संग्रह (छोटे 'सी' के साथ) वस्तुओं / तत्वों के एक समूह का प्रतिनिधित्व करता है।

Collection : जावा कलेक्शंस फ्रेमवर्क का रूट interface

Collections : एक उपयोगिता वर्ग जो जावा कलेक्शंस फ्रेमवर्क का सदस्य है।


public class abcd{
    public static void main(String[] args)
    {
       Map<Integer, String> testMap = new HashMap<Integer, String>();
        testMap.put(10, "a");
        testMap.put(20, "b");
        testMap.put(30, "c");
        testMap.put(40, "d");
        for (Integer key:testMap.keySet()) {
            String value=testMap.get(key);
            System.out.println(value);
        }
    }
}

या

public class abcd {
    public static void main(String[] args)
    {
       Map<Integer, String> testMap = new HashMap<Integer, String>();
        testMap.put(10, "a");
        testMap.put(20, "b");
        testMap.put(30, "c");
        testMap.put(40, "d");
        for (Entry<Integer, String> entry : testMap.entrySet()) {
            Integer key=entry.getKey();
            String value=entry.getValue();
        }
    }
}




java collections