언어/Kotlin

[Kotlin] 코틀린 람다 표현식 (후행 람다)

청포도막대사탕 2025. 4. 30. 19:55
반응형

람다 표현식

이름이 없는 익명함수를 표현하는 방식

변수에 저장하거나 인자로 전달하기에 편리함

val sum = { a: Int, b: Int -> a + b }
println(sum(3, 5))  // 출력: 8

 

이벤트 처리, filter나 forEach같은 함수들에 주로 사용됨

 

람다에 매개변수가 하나라면 ->를 생략하고 매개변수를 it으로 접근할 수 있음

val numbers = listOf(1, 2, 3)
val squared = numbers.map { it * it }  // [1, 4, 9]

 

 

후행 람다

함수의 마지막 인자가 람다 함수인 경우 괄호 밖으로 뺼 수 있음

fun greet(name: String, callback: () -> Unit) {
    println("Hello, $name!")
    callback()
}

greet("Alice") {
    println("HELLO")
}

 

Jetpack Compose를 구성할 때 많이 사용함

Column {
    Text("Hello")
    Text("World")
}

Column의 마지막 인자인 content가 람다이므로 위와 같이 작성

반응형