Sobes.tech
Junior

Wozu dient die Methode limit() in Streams?

sobes.tech KI

Antwort von AI

Die Methode limit(long maxSize) in der Java Stream API ist dazu gedacht, einen neuen Stream zu erstellen, der die Elemente des ursprünglichen Streams in einer Menge enthält, die maxSize nicht überschreitet. Es ist eine Zwischenoperation, die die verbleibenden Elemente nach der Verarbeitung der angegebenen Menge ausschließt.

Hauptwirkungen:

  • Größenbeschränkung: Wendet eine Begrenzung auf die maximale Anzahl von Elementen im resultierenden Stream an.
  • Faulheit: Die Berechnung der Elemente erfolgt nur, wenn sie tatsächlich durch eine Terminaloperation angefordert werden, bis das festgelegte Limit erreicht ist.
  • Möglichkeit der Kürzung: Wenn der ursprüngliche Stream mehr Elemente enthält als maxSize, wird der Stream auf maxSize Elemente gekürzt. Wenn weniger, werden alle verfügbaren Elemente verwendet.

Beispiel für die Verwendung:

List<String> namen = Arrays.asList("Alice", "Bob", "Charlie", "David", "Eve");

List<String> ersteZweiNamen = namen.stream()
                                   .limit(2) // Begrenze den Stream auf die ersten zwei Elemente
                                   .collect(Collectors.toList()); // Sammle in eine Liste

// ersteZweiNamen enthält ["Alice", "Bob"]