Program Java untuk Menghapus unsur pendua dari ArrayList

Dalam contoh ini, kita akan belajar menukar unsur pendua dari ArrayList di Java.

Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:

  • Kelas ArrayList Java
  • Antaramuka Set Java

Contoh 1: Keluarkan unsur pendua dari ArrayList menggunakan Set

 import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedHashSet; import java.util.Set; class Main ( public static void main(String() args) ( // create an arraylist from the array // using asList() method of the Arrays class ArrayList numbers = new ArrayList(Arrays.asList(1, 2, 3, 4, 1, 3)); System.out.println("ArrayList with duplicate elements: " + numbers); // convert the arraylist into a set Set set = new LinkedHashSet(); set.addAll(numbers); // delete al elements of arraylist numbers.clear(); // add element from set to arraylist numbers.addAll(set); System.out.println("ArrayList without duplicate elements: " + numbers); ) )

Pengeluaran

 ArrayList dengan unsur pendua: (1, 2, 3, 4, 1, 3) ArrayList tanpa unsur pendua: (1, 2, 3, 4)

Dalam contoh di atas, kami telah membuat senarai susunan bernama nombor. Senarai susunan mengandungi unsur pendua.

Untuk mengeluarkan unsur pendua dari senarai tatasusunan, kita ada

  • tambahkan semua elemen dari senarai susunan ke set
  • kosongkan senarai laras menggunakan clear()kaedah
  • tambah semua elemen dari set ke senarai array

Di sini, kami telah menggunakan LinkedHashSetuntuk membuat satu set. Ini kerana ia menghilangkan unsur pendua dan mengekalkan susunan sisipan. Untuk mengetahui lebih lanjut, lawati Java LinkedHashSet.

Contoh 2: Keluarkan unsur pendua dari ArrayList menggunakan Stream

 import java.util.ArrayList; import java.util.Arrays; import java.util.stream.Collectors; import java.util.stream.Stream; class Main ( public static void main(String() args) ( // create an arraylist from the array // using asList() method of the Arrays class ArrayList numbers = new ArrayList(Arrays.asList(1, 2, 3, 4, 1, 3)); System.out.println("ArrayList with duplicate elements: " + numbers); // create a stream from arraylist Stream stream = numbers.stream(); // call the distinct() of Stream // to remove duplicate elements stream = stream.distinct(); // convert the stream to arraylist numbers = (ArrayList)stream.collect(Collectors.toList()); System.out.println("ArrayList without duplicate elements: " + numbers); ) )

Pengeluaran

 ArrayList dengan unsur pendua: (1, 2, 3, 4, 1, 3) ArrayList tanpa unsur pendua: (1, 2, 3, 4)

Dalam contoh di atas, kami telah membuat senarai susunan bernama nombor. Senarai susunan mengandungi unsur pendua.

Di sini, kami telah menggunakan kelas Aliran untuk membuang unsur pendua dari senarai tatasusunan.

  • number.stream () - buat aliran dari senarai tatasusunan
  • stream.distinct () - membuang unsur pendua
  • stream.collect (Collectors.toList ()) - mengembalikan senarai dari aliran

Di sini, kami telah menggunakan typecasting untuk menukar senarai yang dikembalikan menjadi senarai array.

Artikel menarik...