Java-ohjelma päällekkäisten elementtien poistamiseksi ArrayLististä

Tässä esimerkissä opimme muuntamaan kaksoiskappaleen Java-taulukosta.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:

  • Java ArrayList -luokka
  • Java Set Interface

Esimerkki 1: Poista päällekkäiset elementit ArrayLististä käyttämällä 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); ) )

Tuotos

 ArrayList kaksoiskappaleilla: (1, 2, 3, 4, 1, 3) ArrayList ilman päällekkäisiä elementtejä: (1, 2, 3, 4)

Yllä olevassa esimerkissä olemme luoneet taulukoita, joiden nimi on numerot. Taulukko sisältää päällekkäisiä elementtejä.

Olemme poistaneet päällekkäisiä elementtejä taulukosta

  • lisää kaikki elementit arraylistista asetettavaksi
  • tyhjennä taulukkolista clear()menetelmällä
  • lisää kaikki elementit joukosta taulukkoluetteloon

Tässä olemme käyttäneet sitä LinkedHashSetluomaan joukon. Se johtuu siitä, että se poistaa päällekkäiset elementit ja ylläpitää lisäysjärjestystä. Lisätietoja on Java LinkedHashSet -sivulla.

Esimerkki 2: Poista päällekkäiset elementit ArrayLististä Streamin avulla

 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); ) )

Tuotos

 ArrayList kaksoiskappaleilla: (1, 2, 3, 4, 1, 3) ArrayList ilman päällekkäisiä elementtejä: (1, 2, 3, 4)

Yllä olevassa esimerkissä olemme luoneet taulukoita, joiden nimi on numerot. Taulukko sisältää päällekkäisiä elementtejä.

Tässä olemme käyttäneet Stream-luokkaa päällekkäisten elementtien poistamiseen taulukosta.

  • numerot.stream () - luo virta taulukosta
  • stream.distinct () - poistaa päällekkäiset elementit
  • stream.collect (Collectors.toList ()) - palauttaa luettelon streamista

Tässä olemme muuttaneet palautetun luettelon taulukkoluetteloksi tyypin määrittelyllä.

Mielenkiintoisia artikkeleita...