java 8 stream flatmap method example

The java.util.stream is a sequence of elements supporting sequential and parallel aggregate operations.

Java 8 stream flatmap method example

package com.w3schools;

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Arrays;

public class Test{  
    public static void main(String[] args) {  
    	try {
            long noOfWords = Files.lines(Paths.get("D:\\test.txt"))
                                    .flatMap(l->Arrays.stream(l.split(" +")))
                                    .distinct()
                                    .count();
            System.out.println("No Of Words: "+noOfWords);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }  
} 

Output

No Of Words: 2