KOTLIN · 함수
익명 함수 (Anonymous Functions)
람다와 달리 반환 타입을 명시하고 return으로 해당 함수에서만 반환합니다. 비지역 반환이 필요 없을 때 유용합니다.
함수중급anonymous-functionreturnnon-local-returnlambda
핵심 설명
람다와 달리 반환 타입을 명시하고 return으로 해당 함수에서만 반환합니다. 비지역 반환이 필요 없을 때 유용합니다.
Kotlin code
fun main() {
// 익명 함수: return이 자기 자신에서 반환
val square = fun(x: Int): Int {
return x * x
}
// 람다: return은 외부 함수에서 반환 (비지역 반환)
val items = listOf(1, 2, 3, 4, 5)
// 익명 함수 사용 - 필터링에서 안전
val evens = items.filter(fun(n: Int): Boolean {
return n % 2 == 0
})
// 여러 반환 지점이 필요한 경우
val classify = fun(score: Int): String {
if (score >= 90) return "A"
if (score >= 80) return "B"
if (score >= 70) return "C"
return "F"
}
println(square(5)) // 25
println(evens) // [2, 4]
println(classify(85)) // B
}학습 팁
익명 함수의 return은 항상 해당 익명 함수에서만 반환합니다. 인라인 함수 내에서 비지역 반환을 원치 않을 때 유용합니다.
주의할 점
람다 내의 return은 바깥 함수에서 반환됩니다(비지역 반환). 이를 방지하려면 익명 함수를 사용하거나 return@label을 사용하세요.
자주 묻는 질문
익명 함수 (Anonymous Functions)란 무엇인가요?
람다와 달리 반환 타입을 명시하고 return 으로 해당 함수에서만 반환합니다. 비지역 반환이 필요 없을 때 유용합니다.
익명 함수 (Anonymous Functions) 학습 시 주의할 점은 무엇인가요?
람다 내의 return 은 바깥 함수에서 반환됩니다(비지역 반환). 이를 방지하려면 익명 함수를 사용하거나 return@label 을 사용하세요.
Continue Learning
Kotlin 학습을 이어가세요
총 200개의 독립 HTML 학습 문서 중 하나입니다. 각 문서는 고유 URL과 canonical 메타데이터를 가집니다.