Table of Contents
Cómo eliminar elementos duplicados de una lista usando Streams en Java
Cuando trabajas con listas en Java es habitual encontrarte con elementos repetidos. Gracias a la API de Streams puedes eliminar los valores duplicados de forma sencilla utilizando el método distinct(), consiguiendo un código mucho más limpio y fácil de mantener.
En este tutorial aprenderás cómo eliminar elementos duplicados de una lista usando Streams en Java paso a paso.
¿Qué hace el método distinct() en Java?
El método distinct() elimina los elementos repetidos de un Stream y devuelve únicamente los valores únicos.
Por ejemplo, si tienes la siguiente lista:
Ana
Luis
Ana
Pedro
Luis
El resultado será:
Ana
Luis
Pedro
Explicación paso a paso
1. Crear una lista
List<String> nombres = new ArrayList<>();
2. Añadir elementos repetidos
nombres.add("Ana");
nombres.add("Luis");
nombres.add("Ana");
nombres.add("Pedro");
nombres.add("Luis");
3. Crear el Stream
nombres.stream()
4. Eliminar duplicados
.distinct()
Este método conserva únicamente la primera aparición de cada elemento.
5. Mostrar el resultado
.forEach(System.out::println);
Código completo
package streams;
import java.util.ArrayList;
import java.util.List;
public class EliminarDuplicados {
public static void main(String[] args) {
List<String> nombres = new ArrayList<>();
nombres.add("Ana");
nombres.add("Luis");
nombres.add("Ana");
nombres.add("Pedro");
nombres.add("Luis");
nombres.stream()
.distinct()
.forEach(System.out::println);
}
}
Resultado esperado
Ana
Luis
Pedro
Ventajas de usar distinct()
- Elimina elementos repetidos automáticamente.
- Hace el código más legible.
- Evita escribir lógica manual para comprobar duplicados.
- Funciona perfectamente junto con otras operaciones de Stream.
Guardar el resultado en otra lista
List<String> unicos = nombres.stream()
.distinct()
.toList();
Así conservarás la lista original y obtendrás una nueva lista sin duplicados.
Conclusión
El método distinct() es una de las operaciones más utilizadas de la API de Streams en Java. Permite eliminar duplicados con una sola línea de código, haciendo que los programas sean más sencillos y fáciles de mantener.
Te puede interesar:
- Cómo convertir una lista de nombres a mayúsculas usando Streams en Java
- Cómo eliminar números duplicados en Java usando HashSet (Ejemplo fácil)
Seguir leyendo:
- PcComponentes rebaja este PC HP con Intel Core Ultra 5 a 549 €: 8 GB de RAM y SSD de 512 GBPcComponentes rebaja este PC HP con Intel Core Ultra 5 a 549 €: 8 GB de RAM y SSD de 512 GB Si estás buscando un ordenador de sobremesa para trabajar, estudiar o renovar... Leer más: PcComponentes rebaja este PC HP con Intel Core Ultra 5 a 549 €: 8 GB de RAM y SSD de 512 GB
- Limpiador de tapicería inalámbrico Ambiano por 49,99 €: el accesorio que llega a ALDI para dejar como nueva la tapicería del cocheLimpiador de tapicería inalámbrico Ambiano por 49,99 €: el accesorio que llega a ALDI para dejar como nueva la tapicería del coche Si llevas tiempo pensando en limpiar a fondo los asientos del coche,... Leer más: Limpiador de tapicería inalámbrico Ambiano por 49,99 €: el accesorio que llega a ALDI para dejar como nueva la tapicería del coche
- Mueble de TV de 180 cm al 50 % de descuento en Leroy Merlin: diseño moderno por solo 180,99 €Mueble de TV de 180 cm al 50 % de descuento en Leroy Merlin: diseño moderno por solo 180,99 € Leroy Merlin vuelve a tener una oferta muy interesante para renovar el salón sin... Leer más: Mueble de TV de 180 cm al 50 % de descuento en Leroy Merlin: diseño moderno por solo 180,99 €
- Blackview Shark 9 5G por 149 euros: un móvil 5G con 8 GB de RAM y 256 GB que baja de los 200 euros en PcComponentesBlackview Shark 9 5G por 149 euros: un móvil 5G con 8 GB de RAM y 256 GB que baja de los 200 euros en PcComponentes Si estás buscando un móvil 5G barato, con... Leer más: Blackview Shark 9 5G por 149 euros: un móvil 5G con 8 GB de RAM y 256 GB que baja de los 200 euros en PcComponentes
- PcComponentes tiene el portátil ideal para la Vuelta al cole y para jugar: PcCom Legend 5080 con RTX 5080 por 2.699,99 €PcComponentes tiene el portátil ideal para la Vuelta al cole y para jugar: PcCom Legend 5080 con RTX 5080 por 2.699,99 € La Vuelta al cole no tiene por qué estar reñida con el... Leer más: PcComponentes tiene el portátil ideal para la Vuelta al cole y para jugar: PcCom Legend 5080 con RTX 5080 por 2.699,99 €




