Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Lambdas in Java - From Zero to Hero
Rating: 4.3 out of 5(320 ratings)
1,872 students

Lambdas in Java - From Zero to Hero

Master Java 8 Lambdas & Streams — Functional Interfaces, Collectors, Optional, Parallel Streams
Created byAjay Iyengar
Last updated 8/2025
English

What you'll learn

  • Starting from the basics, gain in-depth knowledge about Lambdas and Streams using lots of examples
  • Explore a variety of functional interfaces
  • Understand how Lambda expressions are implemented in the JDK by looking at the byte code
  • Complete understanding of Method references, Optional API, Comparator
  • Explore numerous methods in the Stream API and the Collectors class
  • Understand Reduction, flatMap, Parallel Streams, and when to use them
  • Learn "good" coding practices as we discover these topics by a professional Java developer who has been working with the language for 14 years
  • With plenty of exercises to solve, confidently demonstrate your understanding of Lambdas and Streams to future employers

Course content

13 sections167 lectures18h 15m total length
  • Programming is an Art: Difference between Verbose and Concise1:33
  • Verbose code before Java 8: First solution to Problem one4:53
  • Concise code starting Java 8: Second solution to Problem one2:13
  • Verbose code before Java 8: First solution to Problem two2:54
  • Concise code starting Java 8: Second solution to Problem two1:45
  • Conclusion - Why you must learn Lambdas and Streams introduced in Java 81:00
  • Structure of the course3:31
  • The "What, Why, How" approach in the course & Prerequisites1:52
  • About the exercises4:02
  • Downloading the code1:40

Requirements

  • Some (intermediate level) programming experience with Java
  • A computer with the latest JDK and an IDE
  • You need not have any experience with Lambdas and Streams since we start from the basics
  • Desire to learn while still enjoying a few jokes!

Description

Join the most comprehensive course that covers Lambdas and Streams introduced in Java 8.

There are lots of exercises (along with the solution) at the end of a section that will help you gain confidence.

Using numerous real-life examples, you will learn:

  • What the Strategy pattern is

  • What kinds of problems do Anonymous classes solve?

  • Why do we need Lambda expressions?

  • How can Lambda expressions help us in writing concise code?

  • What are higher-order functions?

  • Deep dive into how Lambda expressions are implemented behind the scenes and -

    1. Understand how to look at byte code using javap

    2. Understand the role of the invokedynamic byte code instruction

    3. What are Method Handles

  • Commonly used functional interfaces like Predicate, Function, Supplier, Consumer, BiConsumer  -

    1. How and where to apply them?

    2. How are they used internally in the JDK library?

  • Function composition

  • Method references

  • Explore the Comparator interface

  • Numerous methods in the Stream API like - filter, map, collect, sorted, distinct

  • Understanding what a stream is

  • Understanding the important characteristics of a stream

  • Optional API and the right way to use them

  • Short-circuiting operations in the Stream pipeline

  • Understand why we need Primitive Streams

  • Reduction operations in the Stream pipeline and the importance of identity in Reduction

  • Explore the Collectors API

  • Explore flatMap and other sources of creating Streams

  • Explore Parallel Streams -

    1. What is Moore's law?

    2. Why do we need Parallel streams?

    3. When should we use Parallel streams?

    4. What is the infrastructure behind the scenes when we use Parallel streams?

    5. How does Reduction work in parallel streams?

    6. Role of the Spliterator

  • Learn how to debug and visualize Java 8 Streams with Eclipse & Intellij

and more!

Students completing the course will have a solid, in-depth knowledge of writing concise code using many features that have truly revolutionized how we write code in Java.


Now includes a focused PDF guide on Java 8 Lambdas & Streams — with fresh examples, best practices, and a quick reference table for coding and interviews.


What if you have questions?

I offer full support, 7 days a week, answering any questions you have.


What version of Java should you use?

I am using Java 14 for all the demos since that is the latest version when recording this course. I would urge you to use the latest version of Java. However, the focus will be on Lambdas, Streams, and lots of other features introduced in Java 8 as mentioned above.

Who this course is for:

  • This course is for Java developers who want to get a solid understanding of Lambdas and Streams introduced in Java 8