Назад к вопросам
Junior — Middle
71
Каким образом можно извлечь только уникальные объекты из потока данных в Stream API?
Компании, где спрашивали
DCloud
Ответ от нейросети
sobes.tech AI
В Java Stream API для извлечения уникальных объектов из потока используется метод distinct(). Он возвращает новый поток, в котором удалены дубликаты на основе метода equals() и hashCode() объектов.
Пример:
List<String> list = Arrays.asList("apple", "banana", "apple", "orange");
List<String> uniqueList = list.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(uniqueList); // [apple, banana, orange]
Если объекты сложные и нужно уникальность по определённому полю, можно использовать Collectors.toMap или filter с помощью вспомогательных структур, но для простых случаев distinct() — самый простой способ.