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

জাভাতে দুটি লিস্ট কম্পেয়ার করুন: কমন এবং মিসিং আইটেম খুঁজুন

জাভাতে List ইন্টারফেস দুটি লিস্ট কম্পেয়ার করে কমন এবং মিসিং আইটেম খুঁজে বের করার মেথড প্রদান করে।

দুটি আনসর্টেড লিস্ট ইকুয়ালিটি জন্য কম্পেয়ার

আপনি যদি চেক করতে চান যে দুটি লিস্ট ইকুয়াল কিনা, অর্থাৎ একই আইটেম আছে এবং একই ইন্ডেক্সে আপনি ব্যবহার করতে পারেন:

import java.util.Arrays;
import java.util.List;

public class CompareTwoLists {
    public static void main(String[] args) {
        List listOne = Arrays.asList("a", "b", "c");
        List listTwo = Arrays.asList("a", "b", "c");
        List listThree = Arrays.asList("c", "a", "b");
        boolean isEqual = listOne.equals(listTwo);
        System.out.println(isEqual);
        isEqual = listOne.equals(listThree);
        System.out.println(isEqual);
    }
}

আউটপুট:

true
false

আপনি দেখতে পাচ্ছেন equals() মেথড আইটেমগুলো এবং লিস্টে তাদের লোকেশন কম্পেয়ার করে।

  • জাভাতে ArrayList-এ লুপ চালানোর পদ্ধতি
  • লিস্ট থেকে ডুপ্লিকেট রিমুভ করার পদ্ধতি
  • জাভাতে লিস্টকে অ্যারেতে কনভার্ট করার পদ্ধতি

দুটি সর্টেড লিস্ট কম্পেয়ার

দুটি লিস্টে একই আইটেম আছে কিনা?

দুটি লিস্ট ইকুয়ালিটি জন্য শুধু আইটেমের দিক থেকে কম্পেয়ার করতে, তাদের লোকেশন নির্বিশেষে, আমাদের Collections ক্লাস থেকে sort() মেথড ব্যবহার করতে হবে।

উদাহরণস্বরূপ:

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class CompareTwoLists {
    public static void main(String[] args) {
        List listOne = Arrays.asList("b", "c", "a");
        List listTwo = Arrays.asList("a", "c", "b");
        List listThree = Arrays.asList("c", "a", "b");
        Collections.sort(listOne);
        Collections.sort(listTwo);
        Collections.sort(listThree);
        boolean isEqual = listOne.equals(listTwo);
        System.out.println(isEqual);
        isEqual = listOne.equals(listThree);
        System.out.println(isEqual);
    }
}

আউটপুট:

true
true

দুটি লিস্ট কম্পেয়ার, ডিফারেন্স খুঁজুন

List ইন্টারফেস দুটি লিস্টের মধ্যে ডিফারেন্স খুঁজে বের করার মেথডও প্রদান করে।

removeAll() মেথড দুটি লিস্ট কম্পেয়ার করে সব কমন আইটেম রিমুভ করে। যা বাকি থাকে সেটি হল অ্যাডিশনাল বা মিসিং আইটেম।

উদাহরণস্বরূপ যখন আমরা দুটি লিস্ট, listOne এবং listTwo কম্পেয়ার করি এবং listTwo- থেকে কী মিসিং সেটি খুঁজতে চাই আমরা ব্যবহার করি:

import java.util.ArrayList;
import java.util.Arrays;

public class CompareTwoArrayLists {
    public static void main(String[] args) {
        ArrayList listOne = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
        ArrayList listTwo = new ArrayList<>(Arrays.asList(1, 2, 4, 5, 6, 7));
        listOne.removeAll(listTwo);
        System.out.println("Missing items from listTwo " + listOne);
    }
}

আউটপুট:

Missing items from listTwo [3]

একইভাবে, যদি আমরা ব্যবহার করি:

listTwo.removeAll(listOne);
System.out.println("Missing items from listOne " + listTwo);

আমরা পাব:

Missing items from listOne [6, 7]

দুটি লিস্ট কম্পেয়ার, কমন আইটেম খুঁজুন

retainAll() মেথড শুধু সেই আইটেমগুলো রাখে যেগুলো দুটি লিস্টে কমন। উদাহরণস্বরূপ:

import java.util.ArrayList;
import java.util.Arrays;

public class CompareTwoArrayLists {
    public static void main(String[] args) {
        ArrayList listOne = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
        ArrayList listTwo = new ArrayList<>(Arrays.asList(1, 2, 4, 5, 6, 7));
        listOne.retainAll(listTwo);
        System.out.println("Common items in both lists " + listOne);
    }
}

আউটপুট:

Common items in both lists [1, 2, 4, 5]
  1. জাভাতে দুটি লিংকড লিস্টের ইন্টারসেকশন পয়েন্ট খুঁজে বের করা

  2. জাভা ওপেনসিভি লাইব্রেরি ব্যবহার করে দুটি চিত্র তুলনা

  3. পাইথনে দুটি ডিকশনারি লিস্ট দক্ষতার সাথে তুলনা করুন - পার্থক্য দ্রুত খুঁজে বের করুন

  4. দুই এক্সেল কলাম দ্রুত তুলনা করুন: ৪টি विश्वস্ত কৌশল