Sobes.tech
Junior — Middle

Kun je voorbeelden geven van terminale methoden in de Stream API in Java?

sobes.tech AI

Antwoord van AI

De terminale methoden in de Java Stream API zijn operaties die de verwerking van de stroom afronden en een resultaat of bijwerking teruggeven. Ze geven geen nieuwe Stream terug, maar berekenen bijvoorbeeld een waarde of verzamelen elementen.

Voorbeelden van terminale methoden:

  • forEach(Consumer<? super T> action) — voert een actie uit voor elk element.
  • collect(Collector<? super T,A,R> collector) — verzamelt elementen in een collectie of andere container.
  • reduce(BinaryOperator<T> accumulator) — reduceert de elementen tot één waarde.
  • count() — geeft het aantal elementen terug.
  • anyMatch(Predicate<? super T> predicate) — controleert of ten minste één element aan de voorwaarde voldoet.
  • allMatch(Predicate<? super T> predicate) — controleert of alle elementen aan de voorwaarde voldoen.
  • findFirst() — geeft het eerste element in de stroom terug (indien aanwezig).

Voorbeeld:

List<String> list = Arrays.asList("a", "bb", "ccc");
long count = list.stream()
                 .filter(s -> s.length() > 1)
                 .count();  // terminale methode
System.out.println(count);  // 2