Stream API is used to process collections of objects. A stream in Java is a sequence of objects that supports various methods which can be pipelined to produce the desired result.
Intermediate Operations are the types of operations in which multiple methods are chained in a row.
Characteristics of Intermediate Operations
here are a few Intermediate Operations mentioned below:
1. map():
The map method is used to return a stream consisting of the results of applying the given function to the elements of this stream.
List number = Arrays.asList(2,3,4,5);
List square = number.stream().map(x->x*x).collect(Collectors.toList());
List names = Arrays.asList("Reflection","Collection","Stream");
List result = names.stream().filter(s->s.startsWith("S")).collect(Collectors.toList());
List names = Arrays.asList("Reflection","Collection","Stream");
List result = names.stream().sorted().collect(Collectors.toList());
Terminal Operations are the type of Operations that return the result. These Operations are not processed further just return a final result value.
1. collect(): The collect method is used to return the result of the intermediate operations performed on the stream.
List number = Arrays.asList(2,3,4,5,3);
Set square = number.stream().map(x->x*x).collect(Collectors.toSet());
List number = Arrays.asList(2,3,4,5);
number.stream().map(x->x*x).forEach(y->System.out.println(y));
List number = Arrays.asList(2,3,4,5);
int even = number.stream().filter(x->x%2==0).reduce(0,(ans,i)-> ans+i);
// Java program to demonstrate
// the use of stream in java
import java.util.*;
import java.util.stream.*;
class Demo {
public static void main(String args[])
{
// create a list of integers
List<Integer> number = Arrays.asList(2, 3, 4, 5);
// demonstration of map method
List<Integer> square
= number.stream()
.map(x -> x * x)
.collect(Collectors.toList());
// create a list of String
List<String> names = Arrays.asList(
"Reflection", "Collection", "Stream");
// demonstration of filter method
List<String> result
= names.stream()
.filter(s -> s.startsWith("S"))
.collect(Collectors.toList());
System.out.println(result);
// demonstration of sorted method
List<String> show
= names.stream()
.sorted()
.collect(Collectors.toList());
System.out.println(show);
// create a list of integers
List<Integer> numbers
= Arrays.asList(2, 3, 4, 5, 2);
// collect method returns a set
Set<Integer> squareSet
= numbers.stream()
.map(x -> x * x)
.collect(Collectors.toSet());
System.out.println(squareSet);
// demonstration of forEach method
number.stream()
.map(x -> x * x)
.forEach(y -> System.out.println(y));
// demonstration of reduce method
int even
= number.stream()
.filter(x -> x % 2 == 0)
.reduce(0, (ans, i) -> ans + i);
System.out.println(even);
}
}