[swift] reduce 고차 함수의 사용법과 예시는 어떻게 되나요?
reduce 함수는 Swift에서 제공하는 고차 함수 중 하나입니다. 이 함수는 컬렉션의 요소들을 하나의 값으로 결합하는 기능을 제공합니다.
사용법:
let result = collection.reduce(initialValue) { (partialResult, element) in
// return updated value
}
첫 번째 매개변수로는 초기값(initialValue)을 전달하고, 두 번째 매개변수로는 클로저를 전달합니다. 클로저는 이전 값(partialResult)과 현재 요소(element)를 받아서 갱신된 값을 반환해야 합니다.
예시:
let numbers = [1, 2, 3, 4, 5]
let sum = numbers.reduce(0) { (partialResult, element) in
return partialResult + element
}
print(sum) // 15
위의 예시에서는 numbers 배열의 모든 요소를 더해서 합(sum)을 구하는 코드입니다. 초기값으로 0을 전달하고, 클로저에서는 partialResult와 element를 더한 값을 반환하게 됩니다.
reduce 함수는 컬렉션의 각 요소를 순회하면서 값을 갱신해 나가는 특징을 가지고 있습니다. 따라서 초기값과 클로저를 적절히 활용하면 다양한 연산을 수행할 수 있습니다.
참고 자료: