
Explore the introduction to functional programming in Java 8, including how lambda expressions, streams, and predicates shape modern JDK usage.
Learn to convert a normal method to a lambda expression by assigning it to a function variable and passing it as an argument, with the compiler inferring return types.
Learn how to define a functional interface in Java 8, implement its single abstract method via class, anonymous inner class, and lambda expressions, with a runnable car example like BMW.
Learn the syntax of Java lambda expressions, pass arguments, and return types, with practical examples, including a run method with distance and a bank balance calculation.
discover how lambda expressions capture outer variables only when final or effectively final, and how lazy evaluation defers execution, evidenced by a vehicle distance example.
Explore Java functional programming by using consumer to process inputs and supplier to produce and return values through lambda expressions, including chaining and the get method for random UUID outputs.
Explore function, predicate, and unary operator in Java functional programming. Learn how a function maps an input to an output, and how predicates filter streams with booleans.
Explore Java eight functional interfaces BiFunction, BiConsumer, BiPredicate, and BinaryOperator, and learn to combine two inputs into an output using apply, accept, and test.
Learn to use method references in Java to reference static methods and constructors, and apply them with consumer, supplier, and function interfaces in lambda workflows.
Explore Java streams from the Java util stream package to transform, filter, map, reduce, and collect data with lambda-based functional operations, enabled by lazy evaluation and parallel processing.
Demonstrates creating a simple hello world stream from a list, showing internal iteration via stream forEach and a lambda consumer, instead of a traditional external for loop.
Learn to create streams from arrays, collections, builders, iterators, and generators. Apply operations like filter, map, distinct, and sorted, then perform terminal actions such as collect and reduce.
Explore how to create streams in Java using arrays, collections, stream.of, stream builder, iterate, and generate, with examples and terminal operations.
Shows that streams compute without mutating the original collection, producing new collections via intermediate operations. Executes only at terminal operations, illustrating lazy evaluation and collect toList returning filtered results.
Explore hands-on stream operations in Java functional programming with lambda and streams, creating streams from a collection, applying filter, map, limit, skip, and terminal operations.
In this course, you will be able to learn the basic to expert level of using the lambda and streams
which helps you to develop quick and more readable, and concise code in your work
Lambda:
1. What is the lambda expression?
2. How to use the lambda expression ?
3. Benefits of the lambda expression?
4. What is the SMI or Functional interface?
5. What is the OOTB functional interface ?
6. How Java has implemented Functional programming?
7. Lazxy evaluation
8. Immutability with lambda expression
Streams:
1. What are streams?
2. How to use the streams?
3. What are the benefits of using the streams?
4. What is the syntax of the streams?
5. What are the operations of the streams?
6. How to create streams?
7. Hands-on the Creation of the streams?
Array, Collection, With a collection of values, With Stream builder, With Stream iterate, With Stream generate
With iterator stream support
8. What are the intermediate operations?
filter, Map, flatMap, distinct, sorted, peek, limit, skip
9. Hands on the intermediate operations?
forEach, toArray
Collect, Reduce
Min, Max
Count, anyMatch
allMatch, noneMatch
findFirst, findAny
Chaining of the intermediate operations
10. What are the terminal operations?
11. Hands-on the terminal operations?