Chapter 1. Java 8: Why Should You Care?
Java has changed! The new version of Java, released in March 2014, called Java 8, introduced features that will change how you program on a day-to-day basis. But don’t worry—this brief guide will walk you through the essentials so you can get started.
This first chapter gives an overview of Java 8’s main additions. The next two chapters focus on Java 8’s main features: lambda expressions and streams.
There were two motivations that drove the changes in Java 8:
-
Better code readability
-
Simpler support for multicore
Code Readability
Java can be quite verbose, which results in reduced readability. In other words, it requires a lot of code to express a simple concept. Here’s an example: say you need to sort a list of invoices in decreasing order by amount. Prior to Java 8, you’d write code that looks like this:
Collections
.
sort
(
invoices
,
new
Comparator
<
Invoice
>()
{
public
int
compare
(
Invoice
inv1
,
Invoice
inv2
)
{
return
Double
.
compare
(
inv2
.
getAmount
(),
inv1
.
getAmount
());
}
});
In this kind of coding, you need to worry about a lot of small details in how to do the sorting. In other words, it’s difficult to express a simple solution to the problem statement. You need to create a Comparator
object to define how to compare two invoices. To do that, you need to provide an implementation for the compare
method. To read this code, you have to spend more time figuring out the implementation details instead of focusing on the actual problem statement. ...
Get Introducing Java 8 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.