Swift 언어 reduce

riyeon lee·2023년 8월 10일
0

안녕하세요, 새내기 개발자입니다~!

오늘은 swift언어 reduce함수에 대해서 알아볼게요~!

Swift 언어에서 reduce 함수는 컬렉션의 요소를 결합하여 단일 값을 만드는 함수입니다. 이를 통해 배열이나 딕셔너리 등의 컬렉션을 하나의 값으로 줄일 수 있습니다. reduce 함수는 초기값과 클로저를 사용하여 작동하며, 각 요소를 클로저를 통해 결합하여 최종 결과를 생성합니다.

reduce 함수의 기본 형식은 다음과 같습니다.

<예시코드>

func reduce<Result>(_ initialResult: Result, _ nextPartialResult: (Result, Element) throws -> Result) rethrows -> Result

-initialResult: 초기값으로 사용될 값입니다.
-nextPartialResult: 클로저로, 각 요소와 현재의 중간 결과를 받아서 새로운 중간 결과를 반환합니다.

간단한 예제를 통해 reduce 함수를 이해해 보겠습니다. 아래는 정수 배열의 요소를 모두 더해 하나의 합을 구하는 예제입니다.

<예시코드>

let numbers = [1, 2, 3, 4, 5]
let sum = numbers.reduce(0) { (result, number) in
    return result + number
}
print(sum) // 출력: 15

위의 예제에서 초기값 0은 합산의 시작점을 나타내며, 클로저는 각 요소와 현재 합산된 결과를 받아 새로운 합산 결과를 반환합니다.

또 다른 예시로, 딕셔너리의 값을 모두 더해보겠습니다.

<예시코드>

let expenses = ["Food": 50, "Transport": 30, "Entertainment": 20]
let totalExpenses = expenses.reduce(0) { (result, expense) in
    return result + expense.value
}
print(totalExpenses) // 출력: 100

reduce 함수를 사용하면 컬렉션의 요소들을 다양한 방식으로 결합하여 원하는 결과를 얻을 수 있습니다. 이를 통해 합계, 평균, 최대/최소값 등을 계산하거나 커스텀한 연산을 수행할 수 있습니다.

profile
새내기 앱 개발자

1개의 댓글

comment-user-thumbnail
2023년 8월 23일

reduce 함수에 대해서 적절한 예시와 보여주셔서 쉽게 이해했습니다. 🦭

답글 달기