LongStream flatMap(LongFunction mapper) in Java

LongStream flatMap(LongFunction mapper) returns a stream 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. This 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 :



LongStream flatMap(LongFunction<? extends LongStream> mapper)

Parameters :

  1. LongStream : A sequence of primitive long-valued elements.
  2. LongFunction : A function that accepts an long-valued argument and produces a result.
  3. mapper : A stateless function which is applied to each element and the function returns the new stream.

Return Value : LongStream flatMap(LongFunction mapper) returns a stream by a mapped stream using mapping function.

Example 1 : Using LongStream flatMap() to get the cube of elements of LongStream.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code for LongStream flatMap
// (LongFunction mapper) to get a stream
// consisting of the results of replacing
// each element of this stream with the
// contents of a mapped stream
import java.util.*;
import java.util.stream.LongStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an LongStream
        LongStream stream1 = LongStream.of(4L, 5L, 6L, 7L);
  
        // Using LongStream flatMap()
        LongStream stream2 = stream1.flatMap(num
                      -> LongStream.of(num * num * num));
  
        // Displaying the resulting LongStream
        stream2.forEach(System.out::println);
    }
}

chevron_right


Output :

64
125
216
343

Example 2 : Using LongStream flatMap() to get the count of set bits in binary representation of elements of LongStream.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code for LongStream flatMap
// (LongFunction mapper) to get a stream
// consisting of the results of replacing
// each element of this stream with the
// contents of a mapped stream
import java.util.*;
import java.util.stream.LongStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an LongStream
        LongStream stream1 = LongStream.of(49L, 64L, 81L, 100L);
  
        // Using LongStream flatMap()
        LongStream stream2 = stream1.flatMap(num
                        -> LongStream.of(Long.bitCount(num)));
  
        // Displaying the resulting LongStream
        stream2.forEach(System.out::println);
    }
}

chevron_right


Output :

3
1
3
3


My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.