Grouping, transforming and reduction with Java 8

1 Introduction to Java 8 grouping, transforming and reduction In this previous post, I wrote about how we can group collections of objects with streams and grouping. This is useful but does not cover specific use cases. For example, sometimes we do not only need to…

Multi level grouping with streams

1 Introduction With Java 8 streams it is pretty easy to group collections of objects based on different criteria. In this post, we will see how we can make stream grouping, from simple single level groupings to more complex, involving several levels of groupings. We…

Improving performance: non-blocking processing of streams

1 Introduction Imagine we have an application that needs to access an external web service in order to gather information about clients and then process it. More specifically, we can’t get all this information in a single invocation. If we want to look up different…