Teeing Collector in Java 12

The teeing collector, available since Java 12 as Collectors::teeing, forwards its input to two other collectors before merging their results with a function.

Rebutting 5 Common Stream Tropes

Articles about Java streams often repeat a bunch of tropes: streams are for succinctness, ugly mechanics are the norm, anemic pipelines, magic collectors, and weak exception handling. This is a rebuttal to all of them!

Java 9 Additions To Stream

Java 9 is coming! And it is more than just Jigsaw. One of the many changes are new Stream methods: ‘takeWhile’, ‘dropWhile’, and ‘ofNullable’. For more fun with streams!

Beware Of findFirst() And findAny()

When using Stream.findFirst() or findAny(), you will often assume that there is at most one element left in the stream. But neither tests that assumption so maybe you should use a different approach.

Stream Performance

A close look at stream performance. How do they compare to for and for-each loops oder arrays and lists. And what roles play boxing and the complexity of the executed operation?