Program Java na odstránenie duplicitných prvkov z ArrayList

V tomto príklade sa naučíme prevádzať duplikátny prvok z ArrayList v Jave.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Java:

  • Trieda Java ArrayList
  • Rozhranie sady Java

Príklad 1: Odstráňte duplicitné prvky z ArrayList pomocou 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); ) )

Výkon

 ArrayList s duplicitnými prvkami: (1, 2, 3, 4, 1, 3) ArrayList bez duplicitných prvkov: (1, 2, 3, 4)

Vo vyššie uvedenom príklade sme vytvorili zoznam skladieb s názvom numbers. Zoznam polí obsahuje duplicitné prvky.

Na odstránenie duplicitných prvkov z poľa máme:

  • pridať všetky prvky z polia do sady
  • vyprázdnite pole pomocou clear()metódy
  • pridať všetky prvky z množiny do arraylistu

Tu sme použili LinkedHashSetna vytvorenie množiny. Je to tak preto, lebo odstráni duplicitné prvky a zachová poradie vloženia. Ak sa chcete dozvedieť viac, navštívte Java LinkedHashSet.

Príklad 2: Odstráňte duplicitné prvky z ArrayList pomocou 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); ) )

Výkon

 ArrayList s duplicitnými prvkami: (1, 2, 3, 4, 1, 3) ArrayList bez duplicitných prvkov: (1, 2, 3, 4)

Vo vyššie uvedenom príklade sme vytvorili zoznam skladieb s názvom numbers. Zoznam polí obsahuje duplicitné prvky.

Tu sme použili triedu Stream na odstránenie duplicitných prvkov z poľa.

  • numbers.stream () - vytvorí prúd z poľa
  • stream.distinct () - odstráni duplicitné prvky
  • stream.collect (Collectors.toList ()) - vráti zoznam zo streamu

Tu sme použili obsadenie pomocou Typecasting na prevedenie vráteného zoznamu na zoznam polí.

Zaujímavé články...