Senior
Šta su međumetode i terminalne metode u streamovima?
sobes.tech АИ
Одговор од АИ
U Java Stream API, metode se dele na međumrežne (intermediate) i terminalne (terminal).
-
Međumrežne metode vraćaju novi stream i omogućavaju pravljenje lanca operacija. One su lenje, tj. ne izvršavaju se odmah, već samo kada se pozove terminalna metoda. Primeri:
filter(),map(),sorted(),distinct(). -
Terminalne metode pokreću obradu streama i vraćaju rezultat (ne stream). Nakon njihovog poziva, lanac se završava. Primeri:
collect(),forEach(),reduce(),count().
Primer:
List<String> names = List.of("Anna", "Bob", "Charlie", "David");
long count = names.stream() // međumrežna metoda stream()
.filter(name -> name.length() > 3) // međumrežna metoda filter()
.count(); // terminalna metoda count()
System.out.println(count); // Ispisuje broj imena dužih od 3 karaktera