This chapter introduced the reader to functional programming by explaining and demonstrating the concept of functional interface and lambda expressions. The overview of standard functional interfaces that comes with JDK helps the reader to avoid writing custom code, while the method reference notation allows the reader to write well-structured code that is easy to understand and maintain.
In the next chapter, we will talk about data streams processing. We will define what data streams are, and look at how to process their data and how to chain stream operations in a pipeline. Specifically, we will discuss the stream's initialization and operations (methods), how to connect them in a fluent style, and how to create parallel streams.