Kapitel 7. Arbeiten mit Streams
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Streams nutzen viele der funktionalen Funktionen, die in Java 8 eingeführt wurden, um einen deklarativen Weg zur Verarbeitung von Daten zu bieten. Die Stream-API deckt viele Anwendungsfälle ab, aber du musst wissen, wie die verschiedenen Operationen und verfügbaren Hilfsklassen funktionieren, um sie optimal nutzen zu können.
Kapitel 6 hat sich darauf konzentriert, dir die Grundlagen von Streams zu zeigen. Dieses Kapitel baut darauf auf und zeigt dir verschiedene Möglichkeiten, wie du Streams für verschiedene Anwendungsfälle erstellen und damit arbeiten kannst.
Primitive Ströme
In Java funktionieren Generics nur mit objektbasierten Typen (noch) nicht.1Deshalb kann Stream<T>
nicht für Sequenzen von primitiven Werten wie int
verwendet werden. Es gibt nur zwei Möglichkeiten, primitive Typen mit Streams zu verwenden:
-
Autoboxing
-
Spezialisierte Stream-Varianten
Javas Autoboxing-Unterstützung - die automatische Konvertierung zwischen primitiven Typen und ihren objektbasierten Gegenstücken wie int
und Integer
- mag wie ein einfacher Workaround erscheinen, weil sie automatisch funktioniert, wie im Folgenden gezeigt wird:
Stream
<
Long
>
longStream
=
Stream
.
of
(
5L
,
23L
,
42L
);
Autoboxing bringt jedoch mehrere Probleme mit sich. Zum einen ist der Overhead, der mit der Umwandlung von primitiven Werten in Objekte verbunden ist, ...
Get Ein funktionaler Ansatz für Java now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.