Heim  >  Artikel  >  Java  >  Wie können wir Methoden der Stream API in Java 9 implementieren?

Wie können wir Methoden der Stream API in Java 9 implementieren?

王林
王林nach vorne
2023-08-25 14:45:02696Durchsuche

我们如何在Java 9中实现Stream API的方法?

StreamAPI bietet viele integrierte Funktionen, die die Arbeit mit Streaming-Pipelines erleichtern. Die API ist deklarative Programmierung, wodurch Code präziser und weniger fehleranfällig wird. In Java 9 wurden der Stream API einige nützliche Methoden hinzugefügt.

  • Stream.iterate(): Diese Methode kann als Streaming-Versionsersatz für die traditionelle for-Schleife verwendet werden.
  • Stream.takeWhile(): Diese Methode kann in einer While-Schleife verwendet werden, um den Wert zu übernehmen, wenn die Bedingung erfüllt ist.
  • Stream.dropWhile(): Diese Methode kann den Wert löschen in der While-Schleife, wenn die Bedingung erfüllt ist.

Im folgenden Beispiel können wir statische Methoden implementieren: iterate(), takeWhile(), und dropWhile() Methode der Stream API.

Beispiel

import java.util.Arrays;
import java.util.Iterator;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class StreamAPITest {
   public static void main(String args[]) {
      String[] sortedNames = {"Adithya", "Bharath", "Charan", "Dinesh", "Raja", "Ravi", "Zaheer"};

      System.out.println("[Traditional for loop] Indexes of names starting with R = ");
      for(int i = 0; i < sortedNames.length; i++) {
         if(sortedNames[i].<strong>startsWith</strong>("R")) {
            System.out.println(i);
         }
      }
      System.out.println("[Stream.iterate] Indexes of names starting with R = ");
      <strong>Stream.iterate</strong>(0, i -> i < sortedNames.length, i -> ++i).<strong>filter</strong>(i -> sortedNames[i].startsWith("R")).<strong>forEach</strong>(System.out::println);

      String namesAtoC = <strong>Arrays.stream</strong>(sortedNames).<strong>takeWhile</strong>(n -> n.<strong>charAt</strong>(0) <= &#39;C&#39;)
.<strong>collect</strong>(Collectors.joining(","));

      String namesDtoZ = <strong>Arrays.stream</strong>(sortedNames).<strong>dropWhile</strong>(n -> n.charAt(0) <= &#39;C&#39;)
.<strong>collect</strong>(Collectors.joining(","));

      System.out.println("Names A to C = " + namesAtoC);
      System.out.println("Names D to Z = " + namesDtoZ);
   }
}

Ausgabe

<strong>[Traditional for loop] Indexes of names starting with R =
4
5
[Stream.iterate] Indexes of names starting with R =
4
5
Names A to C = Adithya,Bharath,Charan
Names D to Z = Dinesh,Raja,Ravi,Zaheer</strong>

Das obige ist der detaillierte Inhalt vonWie können wir Methoden der Stream API in Java 9 implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen