코틀린에서 로컬 함수(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 |