고차함수)
함수를 마치 클래스에서 만들어 낸 '인스턴스처럼' 취급하는 방법
함수를 패러미터로 남겨줄수도있고 '결과값으로 반환' 받을수도있는 방법
코틀린에서는 모든 함수를 고차함수로 사용 가능

예시)
fun a(str: String){
println("$str 함수 a")
}
// Unit 함수 자료형의 일종(반환값이 null일 경우 Unit)
fun b(function: (String)->Unit) {
function("b가 호출한")

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

람다함수)
fun a(str: String){
println("$str 함수 a")
}
// Unit 함수 자료형의 일종(반환값이 null일 경우 Unit)
fun b(function: (String)->Unit) {
function("b가 호출한")

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

val c:(String)->Unit = { str -> println("$str 람다함수")}
b(c)
}

Posted by 모과이IT
,