Kotlin/포스팅

코틀린 로컬 함수

짜집퍼박사(짜박) 2023. 12. 17. 08:18

코틀린에서 로컬 함수(Local Function)는 다른 함수 내부에서 정의되는 함수를 말합니다. 로컬 함수는 해당 함수 내부에서만 사용 가능하며, 외부에서는 접근할 수 없습니다. 이를 통해 코드의 가독성을 높이고, 특정 기능을 수행하는 코드 블록을 함수로 분리하여 재사용성을 높일 수 있습니다.

로컬 함수를 정의하는 방법과 활용하는 예제를 살펴보겠습니다.

 

1. 로컬 함수 정의

로컬 함수는 다른 함수 내부에 중첩된 형태로 정의됩니다.

fun outerFunction() {
    // 로컬 함수 정의
    fun localFunction() {
        println("This is a local function.")
    }

    // 로컬 함수 호출
    localFunction()
}

 

2. 로컬 함수의 매개변수

로컬 함수는 외부 함수의 매개변수를 사용할 수 있습니다.

fun outerFunction(message: String) {
    fun localFunction() {
        println(message)
    }

    localFunction()
}

 

3. 로컬 함수의 반환 값

로컬 함수도 반환 값을 가질 수 있습니다.

fun outerFunction(): String {
    fun localFunction(): String {
        return "This is a local function."
    }

    return localFunction()
}

 

4. 로컬 함수의 활용 예제

로컬 함수를 사용하여 코드를 모듈화하고 가독성을 높일 수 있습니다.

fun calculate() {
    fun add(a: Int, b: Int): Int = a + b
    fun subtract(a: Int, b: Int): Int = a - b

    val result = add(10, 5) + subtract(20, 8)
    println("Result: $result")
}

 

5. 로컬 함수와 외부 변수

로컬 함수는 외부 함수의 변수에 접근할 수 있습니다.

fun outerFunction() {
    val externalVariable = "External"

    fun localFunction() {
        println("Accessing external variable: $externalVariable")
    }

    localFunction()
}

로컬 함수를 활용하면 코드를 세분화하고, 가독성을 높이며, 코드 재사용성을 증가시킬 수 있습니다. 로컬 함수는 해당 함수 내에서만 유효하기 때문에, 외부에서는 해당 함수를 직접 호출할 수 없습니다.

 

With ChatGPT

'Kotlin > 포스팅' 카테고리의 다른 글

코틀린 위치 기반 인자와 이름 붙은 인자  (0) 2023.12.17
코틀린 확장 함수  (0) 2023.12.17
코틀린 익명 함수  (0) 2023.12.17
코틀린 고차 함수  (0) 2023.12.17
코틀린 단일 표현식 함수  (0) 2023.12.16