Selles näites õpime teisendama Java-massiivi ArrayList elemendi duplikaati.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java ArrayList klass
- Java komplekti liides
Näide 1: eemaldage ArrayListist duplikaatelemendid, kasutades 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äljund
ArrayList duplikaatelementidega: (1, 2, 3, 4, 1, 3) ArrayList ilma duplikaatelementideta: (1, 2, 3, 4)
Ülaltoodud näites oleme loonud massiivid nimega numbrid. Massiivide loend sisaldab duplikaatelemente.
Kopeerivate elementide eemaldamiseks massiiviloendist oleme
- lisage kõik elemendid arraylist seadistamiseks
- tühjendage massiivide loend
clear()
meetodi abil - lisage kõik elemendid komplektist massiiviloendisse
Siin oleme LinkedHashSet
komplekti loomiseks kasutanud . Sellepärast, et see eemaldab duplikaatelemendid ja säilitab sisestamise järjekorra. Lisateabe saamiseks külastage Java LinkedHashSet.
Näide 2: eemaldage ArrayListist duplikaatelemendid voo abil
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äljund
ArrayList duplikaatelementidega: (1, 2, 3, 4, 1, 3) ArrayList ilma duplikaatelementideta: (1, 2, 3, 4)
Ülaltoodud näites oleme loonud massiivid nimega numbrid. Massiivide loend sisaldab duplikaatelemente.
Siin oleme kasutanud klassi Stream, et eemaldada dubleerivad elemendid massiiviloendist.
- numbrid.stream () - voo loomiseks massiivide loendist
- stream.distinct () - eemaldab duplikaatelemendid
- stream.collect (Collectors.toList ()) - tagastab voost loendi
Siin oleme tagasitoodud loendi massiivide loendiks teisendamiseks kasutanud tüübiväljavõtet.