CodeGym
AI Academy
Aktion
CodeGym University
Lernen
Kurse
Aufgaben
Umfragen & Quizze
Spiele
Hilfe
Zeitplan
Community
Nutzer
Forum
Chat
Artikel
Erfolgsgeschichten
Aktivität
Bewertungen
Abonnements
Helles Design

Lektionen

  • Bewertungen
  • Über uns
Start
Jetzt lernen
Jetzt lernen
  • Mein Fortschritt
  • Kurse
  • Quest-Karte
  • Lektionen
  • Primitive Streams und die Kosten des Boxings (boxing)

    JAVA 25 SELF
    Level 33,Lektion 0
    In dieser Vorlesung erklären wir, warum gewöhnliche Streams von Zahlensammlungen ( Stream<Integer>, Stream<Double>) wegen Boxing/Unboxing ineffizient sein können und wie primitive Streams — IntStream, LongStream, DoubleStream — das vermeiden. Wir betrachten Umwandlungen mapToInt/ boxed(), Aggregationsoperationen ( sum(), average(), summaryStatistics()), sichere Ergebnisse mit OptionalInt/ OptionalDouble sowie, wo Optimierung tatsächlich etwas bringt und wie man den Effekt mit JMH misst.
    Verfügbar
  • Träge Auswertung (lazy evaluation) in der Stream-API

    JAVA 25 SELF
    Level 33,Lektion 1
    In der Vorlesung besprechen wir, wie die träge Auswertung in der Stream-API funktioniert: worin sich Zwischen- und Terminaloperationen unterscheiden, warum Berechnungen erst nach dem Aufruf einer Terminaloperation starten, und welche Vorteile die elementweise Verarbeitung und „Kurzschlussauswertungen“ bieten. Wir zeigen Ketten mit filter, map, peek, findFirst, forEach, visualisieren den Durchlauf der Elemente und gehen typische Fehler sowie Empfehlungen zur effizienten Reihenfolge der Operationen durch.
    Verfügbar
  • Unveränderliche Kollektionen: Collections.unmodifiable

    JAVA 25 SELF
    Level 33,Lektion 2
    In der Vorlesung besprechen wir, wie man Daten mit unveränderlichen Wrappern Collections.unmodifiableList, unmodifiableSet, unmodifiableMap schützt, worin sich „oberflächliche“ Unveränderlichkeit von „tiefer“ unterscheidet, wann und warum man Wrapper aus Methoden zurückgeben sollte, sowie moderne Alternativen List.of/ Set.of/ Map.of. Wir sprechen über typische Fehler (z. B. die Erwartung tiefer Unveränderlichkeit oder der Umgang mit null) und darüber, warum Änderungsversuche in einer UnsupportedOperationException enden.
    Verfügbar
  • Spliterator und parallele Streams

    JAVA 25 SELF
    Level 33,Lektion 3
    In dieser Vorlesung klären wir, was ein Spliterator ist, wie er nicht nur das Iterieren über Elemente ermöglicht, sondern auch die Datenquelle in Teile mittels trySplit() aufteilt, wie darauf aufbauend parallele Streams über parallelStream() und den gemeinsamen ForkJoinPool funktionieren. Gezeigt werden die Schlüsselmethoden ( tryAdvance, estimateSize, characteristics), typische Merkmale ( ORDERED, SIZED, CONCURRENT usw.), praktische Beispiele, ein Mermaid-Diagramm und häufige Fehler beim Einsatz paralleler Streams.
    Verfügbar
  • Eigene Collector und Spliterator

    JAVA 25 SELF
    Level 33,Lektion 4
    In dieser Vorlesung besprechen wir, wie man eigene Collector für die Stream-API über Collector schreibt und wann das wirklich sinnvoll ist, sowie wie man einen eigenen Spliterator für effizientes sequentielles und paralleles Traversieren implementiert. Schritt für Schritt betrachten wir die Komponenten eines Collectors ( supplier, accumulator, combiner, finisher, characteristics), Beispiele für Multi-Maps und Top‑N, Strategien von trySplit sowie das korrekte Setzen der Eigenschaften ( ORDERED, SIZED, SUBSIZED usw.).
    Verfügbar
Lernen
  • Registrierung
  • Java-Kurs
  • Hilfe bei Aufgaben
  • Preise
  • Java-Syntax
Community
  • Nutzer
  • Artikel
  • Forum
  • Chat
  • Erfolgsgeschichten
  • Aktivität
  • Partnerprogramm
Unternehmen
  • Über uns
  • Kontakte
  • Bewertungen
  • Presse
  • CodeGym for EDU
  • FAQ
  • Support
CodeGymCodeGym ist ein Online-Kurs zum Erlernen der Java-Programmierung von Grund auf. Dieser Kurs ist eine perfekte Möglichkeit, Java als Anfänger zu meistern. Er enthält über 1200 Aufgaben mit sofortiger Überprüfung und einen wesentlichen Umfang an Java-Grundlagentheorie. Um Ihren Lernerfolg zu unterstützen, haben wir eine Reihe motivierender Funktionen implementiert: Quizze, Programmierprojekte, Inhalte zum effizienten Lernen und Karriereinformationen für Java-Entwickler.
Folgen Sie uns
Interface-Sprache
English
Deutsch
Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"Programmierer werden gemacht, nicht geboren" © 2026 CodeGym
MastercardVisa
"Programmierer werden gemacht, nicht geboren" © 2026 CodeGym