[swift] 클로저 고차 함수
클로저는 코드 내에서 전달하거나 저장하여 사용할 수 있는 독립적인 기능 블록입니다. Swift에서 클로저는 함수처럼 이름이나 레이블이 없고, 간결한 문법을 제공하여 유연하고 강력한 기능을 제공합니다.
클로저 표현식
let numbers = [1, 2, 3, 4, 5]
let mappedNumbers = numbers.map({ number in number * 2 })
위의 예시는 map
함수를 사용하여 numbers
배열의 각 항목을 2배로 만든 새로운 배열을 생성하는 클로저를 보여줍니다. 이 클로저는 매개변수 number
를 받아서 해당 숫자를 2배로 반환합니다.
고차 함수
고차 함수는 클로저를 매개변수로 받거나, 반환하는 함수입니다. Swift의 표준 라이브러리에는 map
, filter
, reduce
와 같은 고차 함수가 포함되어 있으며, 이러한 함수들을 이용하면 간결하고 가독성 좋은 코드를 작성할 수 있습니다.
let numbers = [1, 2, 3, 4, 5]
let filteredNumbers = numbers.filter({ number in number % 2 == 0 })
위의 예시는 filter
함수를 사용하여 numbers
배열에서 짝수만을 필터링하여 새로운 배열을 생성하는 클로저를 보여줍니다.
클로저 및 고차 함수는 Swift에서 강력한 도구로, 코드를 간결하고 효율적으로 만들어 줍니다.
더 자세한 내용은 Swift 공식 문서를 참고하시기 바랍니다.