Junior — Middle
Aký je účel metódy distinct v API Stream a čím sa líši od iných metód filtrovania?
sobes.tech AI
Odpoveď od AI
Metóda distinct() v API Stream sa používa na odstránenie duplicitných prvkov zo streamu prvkov. Vracia nový stream, v ktorom je každý prvok jedinečný, na základe metód equals() a hashCode() objektov.
Na rozdiel od iných metód filtrovania, ako je filter(), distinct() automaticky odstraňuje opakujúce sa prvky, zatiaľ čo filter() umožňuje stanoviť ľubovoľnú podmienku pre výber prvkov.
Príklad:
List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
// distinctNumbers bude obsahovať [1, 2, 3, 4, 5]