The introduction of functional programming concepts in Java SE 8 was a drastic change for this venerable object-oriented language. Lambda expressions, method references, and streams fundamentally changed the idioms of the language, and many developers have been trying to catch up ever since. This cookbook will help. With more than 70 detailed recipes, author Ken Kousen shows you how to use the newest features of Java to solve a wide range of problems.For developers comfortable with previous Java versions, this guide covers nearly all of Java SE 8, and includes a chapter focused on changes coming in Java 9. Need to understand how functional idioms will change the way you write code? This cookbook—chock full of use cases—is for you.Recipes cover:The basics of lambda expressions and method referencesInterfaces in the java.util.function packageStream operations for transforming and filtering dataComparators and Collectors for sorting and converting streaming dataCombining lambdas, method references, and streamsCreating instances and extract values from Java’s Optional typeNew I/O capabilities that support functional streamsThe Date-Time API that replaces the legacy Date and Calendar classesMechanisms for experimenting with concurrency and parallelism