Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

LongStream flatMap(LongFunction mapper) in Java

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

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.




// 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);
    }
}

Output :

64
125
216
343

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




// 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);
    }
}

Output :

3
1
3
3

My Personal Notes arrow_drop_up
Last Updated : 06 Dec, 2018
Like Article
Save Article
Similar Reads
Related Tutorials