Sobes.tech
Junior — Middle

Koja je svrha metode distinct u Stream API i kako se razlikuje od drugih metoda filtracije?

sobes.tech АИ

Одговор од АИ

Metoda distinct() u API-ju Stream koristi se za uklanjanje duplikata iz toka elemenata. Vraća novi tok u kojem je svaki element jedinstven, zasnovan na metodama equals() i hashCode() objekata.

Za razliku od drugih metoda filtriranja, kao što je filter(), distinct() automatski uklanja ponovljene elemente, dok filter() omogućava postavljanje proizvoljnog uslova za odabir elemenata.

Primer:

List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
    .distinct()
    .collect(Collectors.toList());
// distinctNumbers će sadržati [1, 2, 3, 4, 5]