•
FlatMap
package com.stream10;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.IntStream;
public class FlatMappingExample {
    public static void main(String[] args) {
        List<String> msgList = new ArrayList<>();
        msgList.add("안녕? 난 xxx야");
        msgList.add("우리 같이 xx 하고 놀자");
        msgList.add("Hello World!");
        msgList.stream()                                                
            .flatMap(msg -> Arrays.stream(msg.split(" ")))      // flatMap         
            .forEach(word -> System.out.println(word));         // foreach로 반환
        System.out.println();
        List<String> strNums = Arrays.asList("10, 20, 30", "40, 50", "60");
        strNums.stream()
                .flatMapToInt(e -> {
                    String[] strArr = e.split(",");
                    int[] intArr = new int[strArr.length];
                    for (int i = 0; i < strArr.length; i++) {
                        intArr[i] = Integer.parseInt(strArr[i].trim());
                    }
                    return Arrays.stream(intArr);
//                    return IntStream.of(intArr);
        })
                .forEach(i -> System.out.println(i));                   // IntStream
    }
}
Java
복사

