Sobes.tech
Junior — Middle

Ar Java forEach metodas yra galutinis taškas ar tarpinis etapas srautų apdorojimo metu?

sobes.tech AI

Atsakymas iš AI

Java kalba, Stream.forEach metodas srautams yra terminalinė (pabaigos) operacija, tai yra, taškas, kuriame baigiama srauto apdorojimas. Po forEach iškvietimo srautas laikomas sunaudotu ir tolesnės operacijos su juo neįmanomos.

Pavyzdys:

Stream.of(1, 2, 3)
      .filter(n -> n > 1)  // tarpinė operacija
      .forEach(System.out::println);  // terminalinė operacija

Čia filter yra tarpinė operacija, o forEach yra terminalinė, kuri pradeda viso vamzdyno vykdymą ir išveda elementus.