Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java में ArrayList और HashSet के बीच अंतर


HashSet और ArrayList दोनों Java कलेक्शन फ्रेमवर्क के सबसे महत्वपूर्ण क्लासेस में से कुछ हैं।

ArrayList और HashSet के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।

क्रमांकमुख्य बिंदुArrayListHashSet
1कार्यान्वयनArrayList लिस्ट इंटरफेस का कार्यान्वयन है।दूसरी ओर HashSet सेट इंटरफेस का कार्यान्वयन है।
2आंतरिक कार्यान्वयनArrayList आंतरिक रूप से ऐरे का उपयोग करके कार्यान्वित करता है।HashSet आंतरिक रूप से HashMap का उपयोग करता है।
3एलिमेंट्स का क्रमArrayList इंसर्शन ऑर्डर बनाए रखता है यानी ऑब्जेक्ट्स का क्रम जिसमें वे इंसर्ट किए गए हैं।HashSet एक अनऑर्डर्ड कलेक्शन है और कोई क्रम नहीं बनाए रखता।
4डुप्लीकेट्सArrayList अपने कलेक्शन में डुप्लीकेट मानों की अनुमति देता है।दूसरी ओर HashSet में डुप्लीकेट एलिमेंट्स की अनुमति नहीं है।
5इंडेक्स परफॉरमेंसArrayList अपने परफॉरमेंस के लिए इंडेक्स का उपयोग करता है यानी इंडेक्स-आधारित कोई get(index) कॉल करके ऑब्जेक्ट प्राप्त कर सकता है या remove(index) कॉल करके ऑब्जेक्ट्स हटा सकता है।HashSet पूरी तरह से ऑब्जेक्ट पर आधारित है और यह get() मेथड प्रदान नहीं करता।
6नल अनुमतArrayList में बिना किसी प्रतिबंध के कितने भी नल मान इंसर्ट किए जा सकते हैं।दूसरी ओर HashSet अपने कलेक्शन में केवल एक नल मान की अनुमति देता है, जिसके बाद कोई नल मान जोड़ने की अनुमति नहीं है।

ArrayList बनाम HashSet का उदाहरण

JavaTester.java

import java.io.*; import java.util.*; public class JavaTester { public static void main(String[] args) throws IOException{ int n = 5; List<Integer> al = new ArrayList<>(n); for (int i = 1; i <= n; i++) { al.add(i); } System.out.println(al); al.remove(3); System.out.println(al); for (int i = 0; i < al.size(); i++) { System.out.print(al.get(i) + " "); } } }

आउटपुट

[1, 2, 3, 4, 5] [1, 2, 3, 5] 1 2 3 5

उदाहरण

JavaTester.java

import java.util.HashSet; import java.util.Set; public class JavaTester { public static void main(String[] args){ Set<Integer> hs = new HashSet<>(); hs.add(1); hs.add(2); hs.add(3); hs.add(4); hs.add(4); for (Integer temp : hs) { System.out.print(temp + " "); } } }

आउटपुट

1 2 3 4
  1. - जावा में Iterator और Enumeration के बीच अंतर

    Iterator और Enumeration दोनों कलेक्शन से एलिमेंट्स को ट्रैवर्स और एक्सेस करने के लिए कर्सर हैं। वे दोनों कलेक्शन फ्रेमवर्क से संबंधित हैं। Enumeration JDK 1.0 में जोड़ा गया था और Iterator JDK 1.2 वर्जन में कलेक्शन फ्रेमवर्क में जोड़ा गया। Enumeration कलेक्शन में स्ट्रक्चरल चेंज नहीं कर सकता क्योंकि

  1. - Java में ArrayList.clear() और ArrayList.removeAll() में अंतर

    Java में ArrayList क्लास List इंटरफेस का एक आकार-परिवर्तनीय सरणी कार्यान्वयन है। यह null मानों की अनुमति देता है। इस क्लास की clear() विधि वर्तमान List ऑब्जेक्ट से सभी तत्वों को हटा देती है। उदाहरण import java.util.ArrayList; public class ClearExample { public static void main(String[] args){ //Arra

  1. - Java प्रोग्रामिंग में ArrayList और CopyOnWriteArrayList के बीच अंतर

    ArrayList और CopyOnWriteArrayList दोनों Java में List इंटरफेस के कार्यान्वयन हैं। लेकिन कुछ अंतर भी हैं।ArrayList और CopyOnWriteArrayList के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।क्रमांकमुख्य बिंदुArrayListCopyOnWriteArrayList1सिंक्रोनाइजेशनArrayList प्रकृति में सिंक्रोनाइज्ड नहीं है।CopyOnWriteArrayLi