I dette eksemplet vil vi lære å konvertere duplikatelementet fra ArrayList i Java.
For å forstå dette eksemplet, bør du ha kunnskap om følgende Java-programmeringsemner:
- Java ArrayList-klasse
- Java Set-grensesnitt
Eksempel 1: Fjern dupliserte elementer fra ArrayList ved hjelp av 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); ) )
Produksjon
ArrayList med dupliserte elementer: (1, 2, 3, 4, 1, 3) ArrayList uten dupliserte elementer: (1, 2, 3, 4)
I eksemplet ovenfor har vi opprettet en matriseliste med navn. Arraylisten inneholder dupliserte elementer.
For å fjerne dupliserte elementer fra arraylisten har vi
- legg til alle elementene fra arraylist for å sette
- tøm arraylisten ved hjelp av
clear()
metoden - legg til alle elementene fra sett til arraylist
Her har vi brukt den LinkedHashSet
til å lage et sett. Det er fordi den fjerner duplikatelementene og opprettholder innsettingsrekkefølgen. For å lære mer, besøk Java LinkedHashSet.
Eksempel 2: Fjern dupliserte elementer fra ArrayList ved hjelp av 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); ) )
Produksjon
ArrayList med dupliserte elementer: (1, 2, 3, 4, 1, 3) ArrayList uten dupliserte elementer: (1, 2, 3, 4)
I eksemplet ovenfor har vi opprettet en matriseliste med navn. Arraylisten inneholder dupliserte elementer.
Her har vi brukt Stream-klassen til å fjerne dupliserte elementer fra arraylisten.
- numbers.stream () - opprett en strøm fra arraylisten
- stream.distinct () - fjerner dupliserte elementer
- stream.collect (Collectors.toList ()) - returnerer en liste fra strømmen
Her har vi brukt typecasting for å konvertere den returnerte listen til en arraylist.