Java-8 Streams
Overview:
IMO, Streams are sequence of elements is having various methods pipelined to get the expected results.
Eg.
List <Integer> list= new ArrayList<>(Integer);
for(int i=1;i<11;i++)
list.add(i);
Stream <Integer> listStream=Stream.of(list);//Creation of String from List
Stream doesn't modify the source data.
Operations on Stream:
Intermediate Operations--> Lazily executed and returns a stream. It can be pipelined.
Terminal Operations--> Produces the result and mark the end of stream.
Examples:
Intermediate Operation:
map()--> It returns the result a stream after applying the functions on the elements of the Stream.
List<Integer> number= Arrays.asList(2,4,6);
List<Integer> addByOne=number.stream().map(m->m+1).collect(Collectors.toList());
filter()--> It returns the Boolean value as per the predicate passed inside the argument.
List<Integer> number= Arrays.asList(2,4,6);
List<Integer> filterFour=number.stream().filter(m->m>4).collect(Collectors.toList());
sorted() -->It returns the sorted value of the original stream without changing the original stream.
List<Integer> number= Arrays.asList(2,4,6);
List<Integer> filterFour=number.stream().sorted().collect(Collectors.toList());