좌충우돌 코딩

코틀린 - 람다 함수 본문

코틀린/순수 코틀린

코틀린 - 람다 함수

Tracoding 2023. 4. 7. 23:55

코틀린만 람다 함수가 있는 것이 아니죠.

코틀린의 형인 자바에게도 있고 자바스크립트에도 람다 함수가 있습니다.

이러하듯이 많은 프로그래밍 언어에서 제공하는 익명 함수입니다.

// 일반 함수 선언
fun sum1(num1, num2): Int {
    return num1 + num2
}

// 람다 함수
val sum2 = {num1: Int, num2: Int -> num1 + num2}

람다 함수는 리턴문이 필요가 없이 마지막 라인 반환됩니다.

 

val sum2 = {num1: Int, num2: Int -> num1 + num2}

여기서 -> 이후가 반환값이라고 생각할 수 있습니다.

표현식이 단순하기 때문에 그렇죠

 

다음 코드를 보시죠

fun main() {
    println("결과 : ${sum(20, 30)}")
}

val sum = {num1: Int, num2: Int ->
    println("num1 + num2 더하기를 합니다")
    num1 - num2
    num1 + num2
}

실행 결과는 아래와 같습니다

 

num1 + num2 더하기를 합니다.

결과 : 50

 

람다 함수 표현식을 보면 3개의 라인이 있습니다.

println문, num1 - num2, num1 + num2가 있죠.

하지만 결과는 println문과 결과 : num1 + num2에 결과로 나오는 것을 알 수 있습니다.

이처럼 람다 함수에서는 마지막 라인이 반환 값이 됩니다.

 

 

그럼 이만~~

'코틀린 > 순수 코틀린' 카테고리의 다른 글

코틀린 - 타입 별칭(typealias)  (0) 2023.04.09
코틀린 - 지연 초기화  (0) 2023.03.31
코틀린 - 널(null)  (0) 2023.03.29
코틀린 - 다양한 클래스  (0) 2023.03.27
코틀린 - 상속  (0) 2023.03.26
Comments