15. Processing Data with Streams
Overview
This chapter discusses the Stream API in Java that allows you to write effectively, with fewer lines of code. Once you have a firm grasp of the differences between parallel and sequential streams (defined and outlined in the early sections), you will be able to practice using the Java Stream API to work with arrays and collections by first learning how to create and close those streams. The next step is to explore the different types of operations available to you in Java, their definitions and their respective functions. The first you will encounter are terminal operations and reducers which you will use to extract data from a stream of elements. You will then move on to intermediate operations to filter, map, and otherwise mutate stream structures. And, finally, in this chapter's final exercise and activity, you will learn to apply different types of collectors to wrap stream elements in new containers.