개발언어/JavaFunction
자바 2차원 배열을 평면화 시킨 후 람다식으로 데이터 검색하기
코딩의수평선
2021. 6. 23. 01:30
자바에서 람다식으로 2차원 배열을 평면화 시킨 후 람다식으로 데이터를 검색하기
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
public class Lamda {
public static void main(String[] args) throws IOException {
String[][] strings = new String[][]{{"a", "b"},{"c", "b"},{"d", "b"},{"f", "b"}};
List<String[]> stringList = Arrays.asList(strings);
stringList.stream().
flatMap(arrays -> Arrays.stream(arrays))
.filter(data -> "b".equals(data))
.forEach(System.out::println);
}
}
해당 람다식을보면 flatMap로 2차원 배열을 우선 평면화 시킨다.
그 이후에 filter을 통해 b라는 문자열을 검색하고
해당 문자열을 출력한다. strings 배열 안에는 "b"가 4개가 들어가 있기 때문에 4번이 출력되면 정상이다.