কম্পিউটার টিউটোরিয়াল

জাভাতে ArrayList এবং HashSet-এর পার্থক্য


HashSet এবং ArrayList উভয়ই জাভা কালেকশন ফ্রেমওয়ার্কের সবচেয়ে গুরুত্বপূর্ণ ক্লাসগুলো।

ArrayList এবং HashSet-এর মধ্যে গুরুত্বপূর্ণ পার্থক্যগুলো নিচে দেওয়া হলো:

ক্র. নং কী ArrayList HashSet
১ ইমপ্লিমেন্টেশন ArrayList হল লিস্ট ইন্টারফেসের ইমপ্লিমেন্টেশন। HashSet হল সেট ইন্টারফেসের ইমপ্লিমেন্টেশন।
২ আন্তরিক ইমপ্লিমেন্টেশন ArrayList আંતরিকভাবে অ্যারে ব্যবহার করে। HashSet আন্তরিকভাবে HashMap ব্যবহার করে।
৩ এলিমেন্টের অর্ডার ArrayList ইনসার্শন অর্ডার মেনে চলে। HashSet একটি অনঅর্ডার্ড কালেকশন, কোনো অর্ডার মেনে চলে না।
৪ ডুপ্লিকেট ArrayList ডুপ্লিকেট ভ্যালু অনুমতি দেয়। HashSet-এ ডুপ্লিকেট এলিমেন্ট অনুমতি নেই।
৫ ইন্ডেক্স পারফরম্যান্স ArrayList ইন্ডেক্স-ভিত্তিক, get(index) বা remove(index) দিয়ে অ্যাক্সেস করা যায়। HashSet সম্পূর্ণ অবজেক্ট-ভিত্তিক, get() মেথড নেই।
৬ নাল অনুমতি ArrayList-এ যেকোনো সংখ্যক নাল ভ্যালু ইনসার্ট করা যায়। HashSet-এ শুধু একটি নাল ভ্যালু অনুমতির পরে আর নাল অ্যাড করা যায় না।

ArrayList vs 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. জাভাতে TreeSet এবং HashSet-এর পার্থক্য

  2. জাভাতে Iterator এবং Enumeration-এর পার্থক্য

  3. জাভাতে ArrayList.clear() এবং ArrayList.removeAll()-এর পার্থক্য কী?

  4. জাভাতে ArrayList এবং CopyOnWriteArrayList-এর পার্থক্য