Course contents

Module 04

Functional Java (8+)

Lambdas, method references, Streams and Optional, including how the stream pipeline actually executes.

Premium3 free lessons4 topics15 lessons & question sets0 ready

By the end of this module you can

  • Explain lazy evaluation and how a stream pipeline runs
  • Write collectors for grouping and partitioning
  • Know when parallel streams help and when they hurt

Lambdas

Functional interfaces, method references and variable capture.

  1. Lambdas and functional interfacesLessonFreeSoon
  2. Method referencesLessonFreeSoon
  3. Effectively final and variable captureLessonPremiumSoon
  4. Lambdas: interview questions & scenariosInterview Q&APremiumSoon

Streams

How streams execute, collectors and parallel streams.

  1. How a stream pipeline executesLessonPremiumSoon
  2. Intermediate vs terminal operationsLessonFreeSoon
  3. Collectors deep diveLessonPremiumSoon
  4. flatMap, grouping and partitioningLessonPremiumSoon
  5. Parallel streams: when they help and hurtLessonPremiumSoon
  6. Streams: interview questions & scenariosInterview Q&APremiumSoon

Optional

Using Optional the way it was designed.

  1. Optional done rightLessonPremiumSoon
  2. Optional: interview questions & scenariosInterview Q&APremiumSoon

Stream coding problems

Classic stream problems asked in interviews.

  1. Stream coding problemsPractice problemsPremiumSoon
  2. Stream coding problems: interview questions & scenariosInterview Q&APremiumSoon

Module interview question bank

Finish the module

Module interview question bank

Every interview question worth practising for Functional Java (8+), grouped by topic, with model answers, how to say them and what-if follow-ups.

Being written: it grows as the topics in this module are finished

PremiumSoon