[swift] 고차 함수를 사용하여 배열의 원소를 변형하는 방법은 어떻게 되나요?

Swift에서 배열의 원소를 변형하려면 고차 함수를 사용할 수 있습니다. 고차 함수는 함수를 인자로 받거나 리턴하는 함수로, 간단하게 배열을 변형할 수 있는 강력한 기능을 제공합니다.

아래는 Swift에서 배열의 원소를 변형하는 몇 가지 고차 함수의 예시입니다.

1. map

map 함수를 사용하면 배열의 각 원소를 주어진 함수에 대해 변형할 수 있습니다. 변형된 원소를 포함한 새로운 배열을 리턴합니다.

let numbers = [1, 2, 3, 4, 5]

let doubledNumbers = numbers.map { $0 * 2 }
// [2, 4, 6, 8, 10]

위의 예시에서는 map 함수를 사용하여 numbers 배열의 각 원소를 2배로 변형한 doubledNumbers 배열을 만들었습니다.

2. filter

filter 함수는 주어진 조건에 맞는 원소만 걸러내는 기능을 제공합니다. 조건을 만족하는 원소를 포함한 새로운 배열을 리턴합니다.

let numbers = [1, 2, 3, 4, 5]

let evenNumbers = numbers.filter { $0 % 2 == 0 }
// [2, 4]

위의 예시에서는 filter 함수를 사용하여 numbers 배열에서 짝수인 원소만 걸러낸 evenNumbers 배열을 만들었습니다.

3. reduce

reduce 함수는 배열의 모든 원소를 하나의 값으로 줄이는 기능을 제공합니다. 초기값과 함께 주어진 클로저를 이용하여 원소를 누적시킵니다.

let numbers = [1, 2, 3, 4, 5]

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

위의 예시에서는 reduce 함수를 사용하여 numbers 배열의 모든 원소를 더하고, 초기값으로 0을 사용한 누적값을 계산하였습니다.

고차 함수를 활용하여 배열의 원소를 변형하는 방법을 알아보았습니다. 이 외에도 Swift에서는 많은 고차 함수를 제공하고 있으며, 이를 조합하여 다양한 변형 작업을 수행할 수 있습니다.

더 자세한 내용은 Swift 공식 문서를 참고하시기 바랍니다.