U ovom ćemo primjeru naučiti pretvoriti duplicirani element iz ArrayList u Javi.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:
- Klasa Java ArrayList
- Java postavljeno sučelje
Primjer 1: Uklonite dvostruke elemente iz ArrayList koristeći 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); ) )
Izlaz
ArrayList s dupliciranim elementima: (1, 2, 3, 4, 1, 3) ArrayList bez dupliciranih elemenata: (1, 2, 3, 4)
U gornjem primjeru stvorili smo arraylist s brojevima. Arraylist sadrži dvostruke elemente.
Da bismo uklonili dvostruke elemente iz arraylista, imamo
- dodaj sve elemente iz arraylista u set
- ispraznite arraylist pomoću
clear()
metode - dodaj sve elemente iz skupa u arraylist
Ovdje smo koristili LinkedHashSet
za stvaranje skupa. To je zato što uklanja dvostruke elemente i održava redoslijed umetanja. Da biste saznali više, posjetite Java LinkedHashSet.
Primjer 2: Uklonite dvostruke elemente iz ArrayList koristeći 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); ) )
Izlaz
ArrayList s dupliciranim elementima: (1, 2, 3, 4, 1, 3) ArrayList bez dupliciranih elemenata: (1, 2, 3, 4)
U gornjem primjeru stvorili smo arraylist s brojevima. Arraylist sadrži dvostruke elemente.
Ovdje smo klasu Stream koristili za uklanjanje dupliciranih elemenata iz popisa arraillova.
- numbers.stream () - stvoriti tok iz arraylist-a
- stream.distinct () - uklanja dvostruke elemente
- stream.collect (Collectors.toList ()) - vraća popis iz toka
Ovdje smo koristili tipiziranje za pretvaranje vraćenog popisa u arraylist.