Senior
Kas yra tarpiniai ir galutiniai metodai srautuose?
sobes.tech AI
Atsakymas iš AI
Java Stream API metodai skirstomi į tarpinio (intermediate) ir galutinio (terminal) tipo.
-
Tarpiniai metodai grąžina naują srautą (stream) ir leidžia kurti operacijų grandinę. Jie yra tingūs, tai yra, neįvykdomi iš karto, o tik tada, kai iškviečiama galutinė metodas. Pavyzdžiai:
filter(),map(),sorted(),distinct(). -
Galutiniai metodai pradeda srauto apdorojimą ir grąžina rezultatą (ne srautą). Po jų iškvietimo grandinė baigiasi. Pavyzdžiai:
collect(),forEach(),reduce(),count().
Pavyzdys:
List<String> names = List.of("Anna", "Bob", "Charlie", "David");
long count = names.stream() // tarpinio metodo stream()
.filter(name -> name.length() > 3) // tarpinio metodo filter()
.count(); // galutinio metodo count()
System.out.println(count); // Išveda vardų, ilgesnių nei 3 simboliai, skaičių