Android高阶函数传值
时间: 2023-11-10 22:01:20 浏览: 139
android 传值
在Android中,高阶函数可以通过将一个函数作为参数传递给另一个函数来实现函数的传值。这对于实现组件之间的通信非常有用,类似于在Java中使用回调接口的方式。在Kotlin中,可以通过在函数名前加上双冒号(::)将一个函数变为一个对象,并将其作为参数传递给另一个函数。
下面是一个示例代码,演示了在Android中如何使用高阶函数进行函数传值:
```kotlin
// 定义一个高阶函数,接受一个函数作为参数
fun action1(num: Int, callBack: (String) -> Int) {
val result = num
val length = callBack("学习Kotlin")
Log.e("tag", "action1函数的result为:$result")
}
// 定义一个需要传入的函数
fun callBack(str: String): Int {
return str.length
}
// 调用示例
fun test1() {
action1(1, ::callBack)
}
```
在上面的代码中,`action1`函数接受两个参数,一个是整数类型的`num`,另一个是一个函数类型的`callBack`。`callBack`函数接受一个字符串类型的参数,并返回一个整数类型的结果。在`test1`函数中,我们调用了`action1`函数,并将`callBack`函数作为参数传递进去。
阅读全文