Table of Contents

 

Copyright

Brief Table of Contents

Table of Contents

Praise for the previous edition, Java 8 in Action, by Raoul-Gabriel Urma, Mario Fusco, and Alan Mycroft.

Preface

Acknowledgments

About this book

About the authors

About the cover illustration

1. Fundamentals

Chapter 1. Java 8, 9, 10, and 11: what’s happening?

1.1. So, what’s the big story?

1.2. Why is Java still changing?

1.2.1. Java’s place in the programming language ecosystem

1.2.2. Stream processing

1.2.3. Passing code to methods with behavior parameterization

1.2.4. Parallelism and shared mutable data

1.2.5. Java needs to evolve

1.3. Functions in Java

1.3.1. Methods and lambdas as first-class citizens

1.3.2. Passing code: an example

1.3.3. From passing methods to lambdas

1.4. Streams

1.4.1. Multithreading is difficult

1.5. Default methods and Java modules

1.6. Other good ideas from functional programming

Summary

Chapter 2. Passing code with behavior parameterization

2.1. Coping with changing requirements

2.1.1. First attempt: filtering green apples

2.1.2. Second attempt: parameterizing the color

2.1.3. Third attempt: filtering with every attribute you can think of

2.2. Behavior parameterization

2.3. Tackling verbosity