Talks

The Stream API just turned 10, and it saw a nice addition in the JDK 24: the Gatherer API. A Gatherer is an object that can model an intermediate operation, just as Collector can model a terminal operation. It brings new capabilities to the Stream API, that were not possible before. The Gatherer API is a complex API, made to solve complex problems. A Gatherer can be added to a parallel stream, even if it does not support parallelization itself. This presentation shows you how this API is working, what patterns it gives you, and what are the good use cases for it. You will hear about internal mutable states, integrators, stream interruption, combinations, and parallel streams. All these are the building blocks you need to understand to master this complex API.
José Paumard
Oracle
José is a Java Developer Advocate at Oracle. He holds a PhD in applied mathematics and computer science. He has been an assistant professor at the University Sorbonne Paris Nord for 25 years. He is an active member of the Paris Java User Group, and a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website. He publishes "Java Coding Tips", a biweekly series of shorts, and the "JEP Café", a video series, both on the Java YouTube channel.