Java Lambda Streams — Free Java Tutorial
Learn Java Lambda Streams in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
TL;DR: Learn Java Lambda Streams in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
Written & reviewed by the Syllab.in Academic Team (CBSE/NCERT subject experts) · Updated
Java Lambda Streams in Java
Lambda expressions (Java 8+) are anonymous functions: (params) -> expression. They can be passed around as values and implement functional interfaces (interfaces with one abstract method).
Common functional interfaces: Predicate<T> (boolean test), Function<T,R> (T to R), Consumer<T> (accepts T, returns void), Supplier<T> (returns T), Comparator<T>.
The Stream API processes collections with a pipeline of operations: filter(), map(), sorted(), reduce(), collect(), count(), anyMatch(), findFirst().
Streams are lazy — intermediate operations (filter, map) don't execute until a terminal operation (collect, count, forEach) is called. This enables optimisation.
Java Lambda Streams — Syntax
// Lambda syntax
Predicate<Integer> isEven = n -> n % 2 == 0;
Function<String, Integer> length = s -> s.length();
Comparator<String> byLength = (a, b) -> a.length() - b.length();
// Stream pipeline
list.stream()
.filter(s -> s.marks >= 60) // intermediate
.map(s -> s.name)
Learn Java Lambda Streams step by step with Syllab's free interactive Java tutorial — runnable code examples, practice exercises and instant AI feedback, all free with no signup. Explore the full Java course →