For Java programmers, looping over a collection is the time-honored
way of processing data. Now, from Java 8 onwards, we will instead be
writing stream programs – more concise, more expressive, and more
maintainable. But how fast will they be? To understand the factors
that control stream performance, we need to look at how streams begin
and end as well as the work that they do along the way. And to make
things more complicated still, we have to decide when to use the
built-in parallelization support offered by streams. In this talk
we’ll disentangle these problems and create guidelines for getting the
best performance from Java 8 streams.
Maurice Naftalin has worked in the software industry for four decades as developer, designer, manager, teacher and author.
He has used every release of Java, and has written books on two of them, most recently Mastering Lambdas: Java Programming in a Multicore World, for Oracle Press. He is a frequent presenter at conferences worldwide, including JavaOne; he was a JavaOne Rockstar in 2013. He is a Java Champion.