코틀린/순수 코틀린
코틀린 - 람다 함수
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에 결과로 나오는 것을 알 수 있습니다.
이처럼 람다 함수에서는 마지막 라인이 반환 값이 됩니다.
그럼 이만~~