Swift

[Swift] map, filter, reduce

devharrry 2018. 4. 17. 20:30

Swift의 표준 배열 라이브러리는 map, filter, reduce라는 세 가지 기능을 제공합니다. 


map


클로저로 각 항목들을 반영한 결과물을 가진 새로운 배열을 반환합니다. 


Declaration



Parameters


transform으로 넘기는 것은 클로저는 변경된 값을 반환하기 위해 해당 타입의 값을 반환합니다.

Return Value


변환 된 요소를 포함한 배열 반환


사용




filter


클로저로 각 항목들을 비교하여 일치하는 결과물을 가진 새로운 배열을 반환합니다.


Declaration



Parameters


isIncluded를 지원하는 클로저는 항목이 포함되는지(true) 또는 제외되는지(false) boolean값을 반환합니다. 


Return Value


변환 된 요소를 포함한 배열 반환


사용




reduce


배열의 각 항목들을 재귀적으로 클로저를 적용시켜 하나의 값을 만듭니다. 


Declaration



Parameters


initialResult : 초기 누적 값으로 사용할 값입니다. 클로저가 처음 실행될 때까지 전달됩니다.

nextPartialResult : 누적 값과 시퀀스의 요소를 새로운 누적 값으로 결합하여 클로저의 다음 호출에서 사용되거나 호출자에게 반횐되는 클로저 

Return Value


최종 누적 값, 순서에 요소가 없는 경우, 결과는 false


사용