Stream API enhancements
Stream is a pipeline that contains elements in sequential form to support aggregation operations on collections of data. Stream API is a major feature of Java 8, which provides sequential and parallel execution with filtering based on criteria, all this together is known as internal iteration of Stream.
Java 9 added four new methods to make the Stream API better for iterating operations. dropWhile and takeWhile methods are default methods and iterate and ofNullable are static methods in the java.util.stream interface. Let's discuss the takeWhile method use.
Stream API Syntax:
default Stream<T> takeWhile(Predicate<? super T> predicate)
The takeWhile() method returns the longest prefix, which matches the predicate for the ordered stream. As from the preceding code, takeWhile returns the first three elements because of matching with the predicate.
For unordered streams, the takeWhile() method returns a prefixed element until the predicate condition is true. It stops iteration if the predicate condition returns false and returns a list of elements that predicate evaluated until the condition fails for the first time.