У овом примеру ћемо научити да конвертујемо дуплирани елемент из АрраиЛист у Јави.
Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:
- Класа Јава АрраиЛист
- Јава Сет Интерфаце
Пример 1: Уклоните дупликате елемената из АрраиЛист користећи Сет
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); ) )
Оутпут
АрраиЛист са дупликатима: (1, 2, 3, 4, 1, 3) АрраиЛист без дупликата: (1, 2, 3, 4)
У горњем примеру смо креирали арраилист са бројевима. Арраилист садржи дупликате елемената.
Да бисмо уклонили дуплиране елементе из листе, имамо
- додајте све елементе из арраилист-а у сет
- испразните арраилист
clear()
методом - додајте све елементе из скупа у арраилист
Овде смо користили тастер LinkedHashSet
за стварање скупа. То је зато што уклања дуплиране елементе и одржава редослед уметања. Да бисте сазнали више, посетите Јава ЛинкедХасхСет.
Пример 2: Уклоните дупликате елемената из АрраиЛист користећи Стреам
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); ) )
Оутпут
АрраиЛист са дупликатима: (1, 2, 3, 4, 1, 3) АрраиЛист без дупликата: (1, 2, 3, 4)
У горњем примеру смо креирали арраилист са бројевима. Арраилист садржи дупликате елемената.
Овде смо класу Стреам користили за уклањање дуплираних елемената из листе пописа.
- нумберс.стреам () - креирајте ток из арраилист-а
- стреам.дистинцт () - уклања дуплиране елементе
- стреам.цоллецт (Цоллецторс.тоЛист ()) - враћа листу из тока
Овде смо користили слање типова за претварање враћене листе у арраилист.