Junior — Middle
¿Cómo se pueden extraer solo objetos únicos de un flujo de datos en la API Stream?
sobes.tech AI
Respuesta de la IA
En Java Stream API, para extraer objetos únicos de un flujo se utiliza el método distinct(). Este devuelve un nuevo flujo en el que se eliminan los duplicados basándose en los métodos equals() y hashCode() de los objetos.
Ejemplo:
List<String> list = Arrays.asList("manzana", "plátano", "manzana", "naranja");
List<String> uniqueList = list.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(uniqueList); // [manzana, plátano, naranja]
Si los objetos son complejos y se necesita la unicidad en un campo específico, se puede usar Collectors.toMap o filter con estructuras auxiliares, pero para casos simples, distinct() es la forma más sencilla.