En este ejemplo, aprenderemos a convertir el elemento duplicado de ArrayList en Java.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de Java:
- Clase Java ArrayList
- Interfaz Java Set
Ejemplo 1: eliminar elementos duplicados de ArrayList usando 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); ) )
Salida
ArrayList con elementos duplicados: (1, 2, 3, 4, 1, 3) ArrayList sin elementos duplicados: (1, 2, 3, 4)
En el ejemplo anterior, hemos creado una lista de matrices llamada números. La lista de matrices contiene elementos duplicados.
Para eliminar elementos duplicados de la lista de matrices, tenemos
- agregue todos los elementos de la lista de matrices para establecer
- vaciar la lista de matrices usando el
clear()
método - agregar todos los elementos del conjunto a la lista de matrices
Aquí, hemos utilizado LinkedHashSet
para crear un conjunto. Es porque elimina los elementos duplicados y mantiene el orden de inserción. Para obtener más información, visite Java LinkedHashSet.
Ejemplo 2: eliminar elementos duplicados de ArrayList usando 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); ) )
Salida
ArrayList con elementos duplicados: (1, 2, 3, 4, 1, 3) ArrayList sin elementos duplicados: (1, 2, 3, 4)
En el ejemplo anterior, hemos creado una lista de matrices llamada números. La lista de matrices contiene elementos duplicados.
Aquí, hemos utilizado la clase Stream para eliminar elementos duplicados de la lista de matrices.
- numbers.stream () : crea una secuencia a partir de la lista de matrices
- stream.distinct () - elimina elementos duplicados
- stream.collect (Collectors.toList ()) : devuelve una lista de la secuencia
Aquí, hemos utilizado la conversión de tipos para convertir la lista devuelta en una lista de matrices.