Swift 언어 익명함수

riyeon lee·2023년 8월 25일
0

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

오늘은 Swift언어 익명함수에 대해서 알아볼게요~!

Swift 언어에서 익명 함수는 클로저(Closure)라고도 불리며, 코드 블록을 캡슐화하여 변수나 상수로 저장하거나 함수의 인자로 전달할 수 있는 기능을 제공합니다. 클로저는 일종의 무명 함수로, 이름 없이 사용되며 주로 함수 내부에서 간단한 코드 블록을 정의하고 활용하는데 사용됩니다.

클로저는 아래와 같은 형태를 가지며, 각각의 요소들은 선택적으로 사용될 수 있습니다.

<예시코드>

{ (매개변수 목록) -> 반환 타입 in
    // 클로저의 코드 블록
}

매개변수 목록은 클로저가 받을 인자들을 정의하고, 반환 타입은 클로저의 반환값의 타입을 나타냅니다. in 키워드는 매개변수와 코드 블록을 분리하는 역할을 합니다.

아래는 클로저의 간단한 예시코드입니다.

let addClosure = { (a: Int, b: Int) -> Int in
    return a + b
}

let result = addClosure(3, 5) // 8

클로저는 함수와 유사한 방식으로 사용될 수 있으며, 아래와 같이 함수의 인자로 전달하거나 변수/상수에 저장하여 나중에 사용할 수 있습니다.

<예시코드>

func operateNumbers(_ a: Int, _ b: Int, operation: (Int, Int) -> Int) -> Int {
    return operation(a, b)
}

let addition = { (a: Int, b: Int) -> Int in
    return a + b
}

let subtraction = { (a: Int, b: Int) -> Int in
    return a - b
}

let result1 = operateNumbers(10, 5, operation: addition) // 15
let result2 = operateNumbers(10, 5, operation: subtraction) // 5

클로저는 간단한 코드 블록부터 복잡한 기능까지 다양하게 사용될 수 있습니다. Swift에서 클로저는 함수형 프로그래밍 패러다임과 관련된 중요한 개념 중 하나이며, 많은 유용한 기능을 제공합니다.

profile
새내기 앱 개발자

1개의 댓글

comment-user-thumbnail
2023년 8월 29일

👍🏻

답글 달기