Sobes.tech
Junior — Middle

Je metoda forEach v Java konečným bodem nebo mezistupněm při zpracování proudů?

sobes.tech AI

Odpověď od AI

V jazyce Java je metoda forEach pro proudy (Stream.forEach) terminální (konečná) operace, což znamená, že je to bod ukončení zpracování proudu. Po volání forEach je proud považován za spotřebovaný a další operace s ním nejsou možné.

Příklad:

Stream.of(1, 2, 3)
      .filter(n -> n > 1)  // mezitímní operace
      .forEach(System.out::println);  // terminální operace

Zde je filter mezitímní operace a forEach je terminální operace, která spouští vykonání celého řetězce a vypisuje prvky.