Kotlin 回调函数

 高阶函数的概念:

参数有函数类型或者返回值是函数类型的函数.

那么什么是函数类型呢?

函数类型可以有各种各样不同的参数和返回值的类型的搭配,这些搭配属于不同的函数类型。

例如:

(() -> Unit)                无参数无返回值
(Int -> String)             单Int型参数,返回String
(Int, Int) -> Int           双Int型参数,返回值Int型

 既然函数有类型了,那我们用函数声明变量吧,它和用基本类型,用类声明变量是一样的

var myfun : (Int, Int) -> Int    //函数类型
var price: Float                 //基本类型
var name: String                 //引用类型

 使用场景:

private lateinit var onSelectTime: (time: String) -> Unit

fun setOnTimeSelectedListener(onSelectTime: (time: String) -> Unit) {
    this.onSelectTime = onSelectTime
}

 button.setOnClickListener {    
     onSelectTime.invoke(“时间”)
 }

猜你喜欢

转载自blog.csdn.net/jingerlovexiaojie/article/details/106440336