Java 8 has revolutionized Java. It’s easily the most significant release of Java in the last 10 years. There are a ton of new features including default methods, method and constructor references, and lambdas, just to name a few.
One of the more interesting features is the new java.util.stream
API, which as the Javadoc states, enables
functional-style operations on streams of elements, such as map-reduce transformations on collections
Combine this new API with lambda expressions and you end up with a terse, yet, powerful syntax that significantly simplifies code through the application of projections.