Junior — Middle
Jaki jest cel metody distinct w API Stream i czym różni się od innych metod filtrowania?
sobes.tech AI
Odpowiedź od AI
Metoda distinct() w API Stream służy do usuwania duplikatów z strumienia elementów. Zwraca nowy strumień, w którym każdy element jest unikalny, opierając się na metodach equals() i hashCode() obiektów.
W przeciwieństwie do innych metod filtrowania, takich jak filter(), distinct() automatycznie eliminuje powtarzające się elementy, podczas gdy filter() pozwala na ustawienie dowolnego warunku wyboru elementów.
Przykład:
List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
// distinctNumbers będzie zawierać [1, 2, 3, 4, 5]