Sobes.tech
Middle

Milyen műveletek léteznek az áramlásokban, és milyen típusú műveletek vannak?

sobes.tech MI

Válasz az MI-től

Java 8+ esetén a stream-ek olyan műveletek halmazát kínálják, amelyekkel adatgyűjteményeket lehet feldolgozni.

Művelet típusok:

  1. Közbenső (Intermediate): Új stream-et adnak vissza. Késleltetve végrehajthatók. Lehetővé teszik a műveletek láncolását. Ide tartoznak:

    • filter()
    • map()
    • flatMap()
    • distinct()
    • sorted()
    • peek()
    • limit()
    • skip()
  2. Végső (Terminal): Befejezik a stream-et, végrehajtják a feldolgozást és eredményt adnak vissza vagy mellékhatást okoznak. A végső művelet végrehajtása után a stream nem használható újra. Ide tartoznak:

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

Példa műveletsorozatra:

// Közbenső műveletek (filter, map)
// Végső művelet (collect)
List<String> filteredList = originalList.stream()
    .filter(s -> s.startsWith("A")) // Szűrés "A"-val kezdődő elemekre
    .map(String::toUpperCase) // Átalakítás nagybetűssé
    .collect(Collectors.toList()); // Eredmények gyűjtése listába