Dive into the world of functional programming with our comprehensive course on Java Streams and Lambda Expressions. This course is designed to transform your approach to Java programming by introducing you to the Streams API, a powerful tool for processing data in a functional style. You'll explore the core concepts of streams, including terminal methods and the principle of laziness, which allow for efficient data processing. Our lessons will guide you through the intricacies of Lambda expressions, covering syntax variations and their application within functional interfaces. You'll gain hands-on experience with method references and learn to implement functional programming techniques to supply, filter, map, consume, and sort data. The course also delves into advanced topics like decomposition, reduction, and the use of collectors for grouping and partitioning. Additionally, you'll explore the use of parallel streams to process collections concurrently, leveraging parallel computing hardware for enhanced performance. By the end of this course, you'll be equipped with the skills to write more efficient, scalable, and modern Java code.



Java SE 17 Developer (1Z0-829): Unit 5
This course is part of Java SE 17 Developer (1Z0-829) Specialization

Instructor: Pearson
Access provided by Institute of Entrepreneurs Development
Recommended experience
What you'll learn
Master the Streams API for efficient data processing using terminal methods and laziness.
Implement Lambda expressions and method references within functional interfaces.
Utilize collectors for advanced data grouping, partitioning, and reduction.
Skills you'll gain
Details to know

Add to your LinkedIn profile
3 assignments
July 2025
See how employees at top companies are mastering in-demand skills

Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate

There is 1 module in this course
This module addresses the exam topic grouping working with streams and lambda expressions. The two subtopics in this grouping are used Java object and primitive streams, including lambda expressions implementing functional interfaces to supply, filter, map, consume and sort data, perform decomposition, concatenation and reduction, and grouping and partitioning on sequential and parallel streams. While on the subject of concurrency, we'll also address one of the three objectives under the grouping managing concurrent code execution. That objective is process Java collections concurrently, including the use of parallel streams.
What's included
19 videos3 assignments
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Why people choose Coursera for their career




Explore more from Computer Science

Vanderbilt University




