Java Reference
In-Depth Information
Optional<Stock> maybe = myStocks.stream()
.findFirst();
System.out.println("First Stock: "
+ maybe.get().getName());
List newStocks = new ArrayList();
Optional<Stock> maybeNot = newStocks.stream()
.findFirst();
Consumer<Stock> myConsumer = (s) ->
{
System.out.println("First Stock (Optional): "
+ s.getName());
};
maybeNot.ifPresent(myConsumer);
if(maybeNot.isPresent()){
System.out.println(maybeNot.get().getName());
}
newStocks.add(new Stock("MCD", "McDonalds",
300.0));
Optional<Stock> maybeNow = newStocks.stream()
.findFirst();
maybeNow.ifPresent(myConsumer);
}
}
The results of executing this code demonstrate the concept of using streams. Ex-
ternal iteration ( for loops) is no longer a requirement for iterating over a collection of
data.
How It Works
Prior to Java 8, iteraing over a Collection required some kind of looping block.
This is known as external iteration, a.k.a. programatic looping in sequential order. In
most cases, a for loop was used to work through each element within a Collec-
tion , processing each element according to an application's requirements. While a
Search WWH ::




Custom Search