[swift] 고차 함수인 map, filter, reduce를 사용하여 배열을 처리하는 방법은 무엇인가요?

Map

map 함수는 배열의 각 요소에 함수를 적용하여 새로운 배열을 생성합니다. 예를 들어, 배열의 모든 요소를 제곱하려면 다음과 같이 작성할 수 있습니다.

let numbers = [1, 2, 3, 4, 5]
let squaredNumbers = numbers.map({ $0 * $0 })

Filter

filter 함수는 지정된 조건을 만족하는 요소로 이루어진 새로운 배열을 생성합니다. 예를 들어, 배열에서 짝수만 필터링하려면 다음과 같이 작성할 수 있습니다.

let evenNumbers = numbers.filter({ $0 % 2 == 0 })

Reduce

reduce 함수는 배열의 모든 요소를 결합하여 단일 값으로 반환합니다. 예를 들어, 배열의 모든 요소를 합산하려면 다음과 같이 작성할 수 있습니다.

let sum = numbers.reduce(0, { $0 + $1 })

이러한 고차 함수(map, filter, reduce)를 사용하면 간결하고 가독성이 뛰어난 코드를 작성할 수 있으며 배열을 효율적으로 처리할 수 있습니다.