Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Membandingkan Dua Senarai dengan Cekap di Java untuk Mencari Elemen Dikongsi dan Unik?
Java Compare Two List
Membandingkan dua senarai untuk menentukan bilangan elemen yang dikongsi dan mengenal pasti kedua-dua item yang serupa dan berbeza boleh dicapai menggunakan Koleksi Java.
Untuk menentukan elemen yang dikongsi dengan cekap, pertimbangkan untuk menggunakan kaedah retainAll, yang mengubah suai senarai pertama untuk mengandungi sahaja unsur-unsur yang terdapat dalam kedua-dua senarai. Contohnya, diberikan dua senarai "milan" dan "hafil", operasi retainAll akan mengubah suai satu senarai untuk mengandungi hanya "milan".
Untuk mendapatkan kedua-dua elemen yang serupa dan berbeza, anda boleh menggunakan Set. Kaedah removeAll boleh digunakan untuk mengecualikan sebarang elemen daripada Set yang tidak dikongsi antara senarai. Set yang terhasil akan mengandungi elemen yang serupa, manakala elemen yang berbeza boleh diperoleh dengan mengira gabungan kedua-dua senarai dan seterusnya mengecualikan elemen yang serupa.
Berikut ialah coretan kod sampel menggunakan Set sebagai perbandingan:
import java.util.Collection; import java.util.HashSet; import java.util.Arrays; class Repeated { public static void main(String[] args) { Collection<String> listOne = Arrays.asList("milan", "iga", "dingo", "elpha", "hafil", "meat", "neeta.peeta"); Collection<String> listTwo = Arrays.asList("hafil", "iga", "binga", "mike", "dingo"); Collection<String> similar = new HashSet<>(listOne); Collection<String> different = new HashSet<>(); different.addAll(listOne); different.addAll(listTwo); similar.retainAll(listTwo); different.removeAll(similar); System.out.printf("One:%s%nTwo:%s%nSimilar:%s%nDifferent:%s%n", listOne, listTwo, similar, different); } }
Output:
One:[milan, iga, dingo, elpha, hafil, meat, neeta.peeta] Two:[hafil, iga, binga, mike, dingo] Similar:[dingo, iga, hafil] Different:[mike, binga, milan, meat, elpha, neeta.peeta]
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membandingkan Dua Senarai dengan Cekap di Java untuk Mencari Elemen Dikongsi dan Unik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!