•
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
복사