- Java version above 9
- Unit 1: Introduction to the Functional Programming
- Functional Programming with Java - Course Overview
- Functional Programming with Java - Exploring GitHub Repo and Installations
- Unit 2: Introduction to Functional Programming with Java
- Getting Started with Functional Programming with Java
- Improving Java Functional Program with filter
- Use Lambda Expression to enhance Functional Program
- Using map in Functional Programs - with Exercises
- Exercise on Functional Programming with Streams, Filters and Lambdas
- Unit 3: Playing with Streams
- Stream Operations - Calculate Sum using reduce
- Playing with reduce
- Exploring Streams with Puzzles in JShell
- Exercises on Functional Programming with Streams and reduce
- Stream Operations - distinct and sorted
- Using Comparators to Sort Streams with sorted
- Collecting Stream Elements to List using collect
- Reviewing Streams - Intermediate and Stream Operations
- Unit 4: Java Functional Interfaces and Lambdas
- Getting Started with Functional Interfaces - Predicate, Consumer and Function
- Do Exercises with Functional Interfaces - BinaryOperator
- Doing Behaviour Parameterization with Functional Programming
- Exercise with Behaviour Parameterization
- Exploring Supplier and UnaryOperator Functional Interfaces
- Exploring BiPredicate, BiFunction, BiConsumer, and Primitive Functional Interfaces
- Playing Puzzles with Functional Interfaces and Lambdas
- Exploring Method References with Java
- Unit 5: Java Functional Programming with Custom Classes
- Creating Custom Class Course with some Test Data
- Playing with allMatch, noneMatch and anyMatch
- Sorting courses with sorted and creating Comparators
- Playing with skip, limit, takeWhile and dropWhile
- Finding top, max and min courses with max, min, findFirst and findAny
- Playing with sum, average and count
- Grouping courses into Map using groupingBy
- Unit 6: Java Functional Programming
- Creating Streams using Stream of method and for Arrays
- Creating Streams for First 100 Numbers, Squares of Numbers and More
- Doing Big Number calculations with BigInteger
- Unit 7: Playing further with Java Functional Programming
- Joining Strings with joining and Playing with flapMap
- Creating Higher-Order Functions
- FP and Performance - Intermediate Stream Operations are Lazy
- Improving Performance with Parallelization of Streams
- Unit 8: Functional Programming makes Java Easy
- Modifying lists with replaceAll and removeIf
- Playing with Files using Functional Programming
- Playing with Threads using Functional Programming
- Using Functional Programming in Java Applications
- Name - Abhinav
- GitHub - github.com/abhinavg916