아무나개발하자

고차함수 람다함수 사용법 본문

Kotlin

고차함수 람다함수 사용법

개발천재나천재 2022. 9. 10. 15:23

고차함수란 함수를 인자로 전달받거나 함수를 결과로 반환하는 함수를 말한다 여기서 b를 고차함수라고 하는데 고차함수에 사용법에 대해 알아보자

fun main() {
   b(::a)
}


fun a(str: String){
    println("$str 함수 a")
}

fun b(a:(String) ->Unit){
    a("b가 호출한")
}

 

fun b라고 함수를 선언하고 파라미터로 fun a를 받는데, 함수를 파라미터로 받는 방법은

fun b에서 파라미터로 받을 함수 이름을 지정, a라고 나는 지정했다

:를 써준다음, 파라미터로 받을 인자의 타입(String) -> 리턴타입을 써준다.

그리고 함수를 사용하면 된다. 

고차함수를 호출하는 방법 -> 고차함수이름(::매개로 받은 함수이름)

 

람다함수 사용법

fun main() {
   b(::a)
   
//람다함수 사용법
//val 변수선언 :(매개변수 타입1, 매개변수 타입2, ..) -> return타입 = {매개변수1, 매개변수2, .. -> 함수내용}
   val c : (String) -> Unit = {str -> println("$str 람다함수")} 
   val p : (Int, Int) -> Int = {a, b -> a+b}
   
   b(c)
   println(p(10,20))
}


fun a(str: String){
    println("$str 함수 a")
}

fun b(a:(String) ->Unit){
    a("b가 호출한")
}

 

주석 내용을 참조하자!!

 

출처 : https://www.youtube.com/watch?v=mvfU-7tdLWs&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=14