Sobes.tech
Middle
181

Koje operacije postoje u streamovima i koje vrste operacija postoje?

Одговор од АИ

sobes.tech АИ

U Java 8+ tokovi pružaju skup operacija za obradu kolekcija podataka.

Tipovi operacija:

  1. Međuprostorne (Intermediate): Vraćaju novi tok. Mogu se izvršavati lenjo. Omogućavaju lančano povezivanje operacija. Uključuju:

    • filter()
    • map()
    • flatMap()
    • distinct()
    • sorted()
    • peek()
    • limit()
    • skip()
  2. Terminalne (Terminal): Završavaju rad toka, izvršavaju obradu i vraćaju rezultat ili izazivaju spoljni efekat. Nakon izvršenja terminalne operacije, tok se ne može ponovo koristiti. Uključuju:

    • forEach()
    • forEachOrdered()
    • toArray()
    • reduce()
    • collect()
    • count()
    • sum()
    • average()
    • min()
    • max()
    • anyMatch()
    • allMatch()
    • noneMatch()
    • findFirst()
    • findAny()

Primer niza operacija:

// Međuprostorne operacije (filter, map)
// Terminalna operacija (collect)
List<String> filteredList = originalList.stream()
    .filter(s -> s.startsWith("A")) // Filtriranje elemenata koji počinju sa "A"
    .map(String::toUpperCase) // Pretvaranje u velika slova
    .collect(Collectors.toList()); // Sakupljanje rezultata u listu