함수형 프로그래밍의 주요 함수 중 하나인 map은 n개의 요소 각각에 함수를 적용한 결과를 만들어내는 함수이다. 많은 문제를 접하다 보면 자연스레 for보다 map을 선호하게 되는데 문제에 따라 for문을 사용하는 것이 더 간결한 코드를 만들어 낼 수 있었다. 구구단의 예를 들어 보자. 원하는 결과가 1단부터 9단까지 결과의 리스트라고 하자. 이 때 flatMap함수를 사용한다면 이렇게 쓸 수 있다.val range = 1 to 9 val result = range.flatMap{i => range.flatMap{j => List(i * j) } } 1) 2의 배수 단의 결과만을 얻고 싶다고 해 보자.val result = range.filter(_ % 2 == 0).flatMap{i => range.f..