- Adding a Terminal Operation on a Stream
- Adding Intermediate Operations on a Stream
- Creating Streams
- Creating Your Own Collector
- Finding the Characteristics of a Stream
- Implementing the Collector Interface
- Parallelizing Streams
- Processing Data in Memory Using the Stream API
- Reducing a Stream
- Using a Collector as a Terminal Operation
- Using Optionals