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 la aspiradora sin cable Ultenic U20 a 129,99 euros: potencia y cepillo antienredos para limpiar la casaPcComponentes rebaja la aspiradora sin cable Ultenic U20 a 129,99 euros: potencia y cepillo antienredos para limpiar la casa ¿Tienes mascotas en casa, se acumula el polvo en los rincones o estás buscando una... Leer más: PcComponentes rebaja la aspiradora sin cable Ultenic U20 a 129,99 euros: potencia y cepillo antienredos para limpiar la casa
- Leroy Merlin rebaja 66 € la mampara de ducha Sensea Remix2: diseño negro, cristal antical y entrada correderaLeroy Merlin rebaja 66 € la mampara de ducha Sensea Remix2: diseño negro, cristal antical y entrada corredera Renovar el cuarto de baño no siempre exige realizar una reforma completa. En ocasiones, cambiar un... Leer más: Leroy Merlin rebaja 66 € la mampara de ducha Sensea Remix2: diseño negro, cristal antical y entrada corredera
- Leroy Merlin rebaja una mampara de ducha Sensea con cristal serigrafiado: ahorra 65,20 euros hasta el 19 de octubreLeroy Merlin rebaja una mampara de ducha Sensea con cristal serigrafiado: ahorra 65,20 euros hasta el 19 de octubre Renovar el baño no siempre exige hacer una gran inversión. A veces, cambiar un elemento... Leer más: Leroy Merlin rebaja una mampara de ducha Sensea con cristal serigrafiado: ahorra 65,20 euros hasta el 19 de octubre
- Lidl pone a la venta una sierra circular PARKSIDE por 34,99 euros: una herramienta para los amantes del bricolajeLidl pone a la venta una sierra circular PARKSIDE por 34,99 euros: una herramienta para los amantes del bricolaje Los aficionados al bricolaje y los trabajos de carpintería tienen una nueva herramienta que merece... Leer más: Lidl pone a la venta una sierra circular PARKSIDE por 34,99 euros: una herramienta para los amantes del bricolaje
- Lidl tiene un limpiador por ultrasonidos por 22,99 euros: una opción práctica para pequeños objetosLidl tiene un limpiador por ultrasonidos por 22,99 euros: una opción práctica para pequeños objetos Los amantes de la electrónica y de los accesorios que ayudan a mantener limpios los objetos de uso cotidiano... Leer más: Lidl tiene un limpiador por ultrasonidos por 22,99 euros: una opción práctica para pequeños objetos





