在Kotlin中传递和使用函数作为构造函数参数
如何创建一个将函数作为构造函数参数的类。 然后,在课程的稍后阶段使用此功能。
你可以像使用其他类型一样拥有一个函数类型的属性:
class A(val f: () -> Unit) { fun foo() { f() } }
从这里,你可以将该函数作为方法引用传递给构造函数:
fun bar() { println("this is bar") } val a = A(::bar) a.foo() // this is bar
或者作为lambda:
val a = A({ println("this is the lambda") })
你甚至可以为函数的最后一个参数lambdas做一个通常的语法糖(尽管这有点疯狂):
val a = A { println("this is the lambda") }
- MutableLiveData与Kotlin多重打样器通用不工作
- Android OutOfMemoryError:未能分配一个57993496字节分配与16764448空闲字节
- 使用Kotlin和Java编译器的Android项目需要很长时间才能编译 – 超过20分钟
- Kotlin中活动与片段之间的交流
- Observable.combine在kotlin中的最新类型推断
- 要求在Kotlin中使用“allOf”的批注注释
- 智能投到BootsrapButton是不可能的,因为endtrip是这个时候改变了的可变属性
- 未解决的参考DaggerApplicationComponent
- 指定为非null的参数在ArrayAdaper中为null