Swift

Swift 고차함수(map, filter, reduce)

eddie0329 2021. 11. 28. 21:15
반응형

📌 목록

  • 고차 함수란?
  • map
  • filter
  • reduce

📌 고차 함수란?

다른 함수를 전달 인자로 받거나 함수 싱행의 결과를 함수로 반환하는 함수

swift에서 제공하는 기본적인 고차함수: map, filter, reduce

📌 map

let numbers: [Int] = [0, 1, 2, 3]

// 풀어서 쓴 함수
//let mapArray = numbers.map { (number) -> Int in
//  return number * 2
//}

// 간소화
let mapArray = numbers.map { $0 * 2 }
mapArray // [0, 2, 4, 6]

📌 filter

let intArray = [10, 4, 5, 20, 13]
let filterArray = intArray.filter { $0 > 5 }
filterArray // [10, 20 ,13]

📌 reduce


let intArray2 = [1, 2, 3, 4, 5]
// 초기값 설정 0
let sum = intArray2.reduce(0) {
  (result: Int, element: Int) -> Int in
  return result + element
}
sum // 15
반응형