Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js PHP HTML5 Vue JS
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 AWS Certified Developer - Associate
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Blockchain
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Virtual Reality
Google Flutter Android Development iOS Development React Native Swift Dart (programming language) Mobile App Development Kotlin SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Meditation Sound Therapy CBT Cognitive Behavioral Therapy
Entrepreneurship Fundamentals Business Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Home Business
Digital Marketing Social Media Marketing Marketing Strategy Internet Marketing Google Analytics Copywriting Email Marketing YouTube Marketing Podcasting
2022-04-12T15:01:42Z

IT & SoftwareIT CertificationsLambda Expressions

Java Lambdas and Streams

Mastering Lambdas and Streams in Java (with code examples)
Rating: 4.4 out of 54.4 (25 ratings)
256 students
Created by Dr. Seán Kennedy
Last updated 1/2022
English
English [Auto]

What you'll learn

  • Functional Interfaces - what they are and their relationship to lambda expressions.
  • Lambdas - anonymous inner class syntax versus lambda expressions.
  • Functional Interfaces from the API - sample code explaining Predicate/BiPredicate, Consumer/BiConsumer
  • Functional Interfaces from the API - sample code explaining Supplier, Function/BiFunction
  • Functional Interfaces from the API - sample code explaining UnaryOperator, BinaryOperator
  • Method References - their relationship with lambdas. Different types of method references explained with code - bound, unbound, static and constructor.
  • Method References - how the context helps in understanding them.
  • Streams - what they are, stream pipelines and stream laziness.
  • Streams - Terminal operations.
  • Streams - Terminal operations - reduce, collect() explained with code examples.
  • Streams - collect() using API collectors explained with code examples e.g. CollectorsDOTtoMap(), CollectorsDOTgroupingBy() and CollectorsDOTpartitioningBy()
  • Streams - Intermediate Operations explained with code examples e.g. filter(), distinct(), limit(), map(), flatMap() and sorted().
  • Streams - stateful and short-circuiting intermediate operations explained.
  • Streams - Primitive Streams - how to create them, what their API's look like and how to map between them.
  • Streams - mapping between Object streams and primitive streams and vice versa.
  • Optionals - what they are and why they are useful. Sample code demonstrating their use.
  • Parallel Streams - how to create them. Sequential versus parallel stream processing.

Requirements

  • Intermediate Java. Whereas my "Java 8 OCA (1Z0-808) Course" starts at the beginning, this assumes that the learner has a reasonable level of Java.
  • To make understanding lambdas easier, a familiarity with anonymous inner classes would help. That said, lambdas are contrasted with anonymous inner class syntax in the course.

Description

UPDATE April 2022 - lambdas/method references assignment added!

This course is a systematic approach to explaining in both notes format and code examples, lambda expressions and streams in Java. All the code samples are included.

Topics include:

  • Lambdas:

    • Functional Interfaces

    • Lambdas and their relationship to Functional Interfaces

    • Lambdas in code using a custom Functional Interface

    • Lambdas in code using the pre-defined API Functional Interfaces:

      • Predicate/BiPredicate

      • Supplier

      • Consumer/BiConsumer

      • Function/BiFunction

      • UnaryOperator and BinaryOperator

    • final and "effectively final"

    • Method References:

      • bound

      • unbound

      • static

      • constructor

      • context and it's effect in understanding method references

  • Streams:

    • Pipelines

    • Laziness

    • Creating streams

    • Terminal operations:

      • reduce()

      • collect()

        • Collectors.toMap()

        • Collectors.groupingBy()

        • Collectors.partitioningBy()

    • Intermediate operations:

      • filter(), distinct(), limit()

      • map(), flatMap(), sorted()

    • Primitive streams:

      • Creating

      • API

      • Functional Interfaces

      • Mapping between primitive streams

      • Mapping between primitive streams and Object streams and vice versa

    • Optionals

    • Parallel streams

This course is geared towards Java Certification i.e. the Predicate lambda sections would suit Java 8 OCA (1Z0-808). The remaining lambda sections and the streams sections would suit both Java 8 OCP (1Z0-809) and Java 11 (1Z0-819). This course explains the concepts through small, simple, targeted code examples.

For those who don't know me, my "Java 8 OCA (1Z0-808) Course" is, at the time of writing, the highest rated Java 8 OCA course on Udemy. I am a lecturer since 2002 and have taught the OCA and OCP syllabii since 2013 on behalf of a highly regarded software company. On completion of the courses with me, graduates then face the company's own internal Java Certification exam (similar in style to Oracle's). I have no visibility into the questions they will face. It is a 3 hour long intensive exam. The company are delighted with the pass rate (100% since year 1).

I love teaching and this course has all my experience in explaining lambdas and streams in Java. I am delighted that Enthuware (the excellent Java certification training tool), have, in their explanations, linked to my YouTube channel.


Who this course is for:

  • Anyone interested in learning Lambdas and Streams (the Functional Programming aspects of Java 8).

Instructor

Dr. Seán Kennedy
OCA, OCP
Dr. Seán Kennedy
  • 4.4 Instructor Rating
  • 231 Reviews
  • 2,905 Students
  • 3 Courses

Hi, Seán here from Let's Get Certified. I worked in industry for 13 years in FinTech and Telecoms. I have been a lecturer since 2002 and have a PhD in IT.  I am OCA and OCP certified. I have taught the OCA/OCP syllabii since 2013 on a Level 9 Masters course for a highly regarded software company. Enthuware link to my YouTube channel in their explanations.


Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.