Stream flatMapToInt() in Java with examples
Stream flatMapToInt(Function mapper) returns an IntStream consisting of the results of replacing each element of this stream with the contents of a mapped stream produced by applying the provided mapping function to each element. Stream flatMapToInt(Function mapper) is an intermediate operation. These operations are always lazy. Intermediate operations are invoked on a Stream instance and after they finish their processing, they give a Stream instance as output.
Note : Each mapped stream is closed after its contents have been placed into this stream. If a mapped stream is null, an empty stream is used, instead.
Syntax :
IntStream flatMapToInt(Function<? super T, ? extends IntStream> mapper)
Where, IntStream is a sequence of primitive
int-valued elements and T is the type
of stream elements. mapper is a stateless function
which is applied to each element and the function
returns the new stream.
Example 1 : flatMapToInt() function with operation of parsing string to Integer.
import java.util.*;
import java.util.stream.IntStream;
class GFG {
public static void main(String[] args)
{
List<String> list = Arrays.asList( "1" , "2" , "3" ,
"4" , "5" );
list.stream().flatMapToInt(num -> IntStream.of(Integer.parseInt(num))).
forEach(System.out::println);
}
}
|
Output :
1
2
3
4
5
Example 2 : flatMapToInt() function with operation of mapping string with their length.
import java.util.*;
import java.util.stream.IntStream;
class GFG {
public static void main(String[] args)
{
List<String> list = Arrays.asList( "Geeks" , "GFG" ,
"GeeksforGeeks" , "gfg" );
list.stream().flatMapToInt(str -> IntStream.of(str.length())).
forEach(System.out::println);
}
}
|
Output :
5
3
13
3
Last Updated :
06 Dec, 2018
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...