Sobes.tech
Senior

Kas ir starpposma un galīgās metodes straumēs?

sobes.tech AI

Atbilde no AI

Java Stream API metodus iedala starpposma (intermediate) un galīgās (terminal) metodes.

  • Starpposma metodes atgriež jaunu straumi (stream) un ļauj veidot operāciju ķēdi. Tās ir slinkas, tas ir, tās netiek izpildītas uzreiz, bet tikai tad, kad tiek izsaukta galīgā metode. Piemēri: filter(), map(), sorted(), distinct().

  • Galīgās metodes uzsāk straumes apstrādi un atgriež rezultātu (ne straumi). Pēc to izsaukšanas ķēde beidzas. Piemēri: collect(), forEach(), reduce(), count().

Piemērs:

List<String> names = List.of("Anna", "Bob", "Charlie", "David");

long count = names.stream()  // starpposma metode stream()
    .filter(name -> name.length() > 3)  // starpposma metode filter()
    .count();  // galīgā metode count()

System.out.println(count);  // Izdrukā nosaukumu skaitu, kas ir garāki par 3 rakstzīmes