Kotlin中Lambda接口的实现
相当于kotlin中的代码,我尝试执行的操作似乎无效:
public interface AnInterface { void doSmth(MyClass inst, int num);
}
在里面:
AnInterface impl = (inst, num) -> { //...
}
回答:
如果AnInterface
是Java,则可以使用SAM转换:
val impl = AnInterface { inst, num -> //...
}
否则,如果界面是Kotlin …
interface AnInterface { fun doSmth(inst: MyClass, num: Int)
}
…您可以使用object
语法匿名实现它:
val impl = object : AnInterface { override fun doSmth(inst:, num: Int) {
//...
}
}
以上是 Kotlin中Lambda接口的实现 的全部内容, 来源链接: utcz.com/qa/418151.html