相关疑难解决方法(0)

参考Kotlin中特定实例的方法

在Java 8中,我们可以引用Class实例的方法.这是一个例子

Function1<Integer, Object> ref = a::getItem;
Run Code Online (Sandbox Code Playgroud)

a是Adapter具有该方法的类的实例Object getItem(int i).

我们可以在Kotlin做同样的事吗?我尝试了相同的语法但没有成功.到目前为止,我只能创建一个扩展方法引用,如下所示:

val ref: Adapter.(Int) -> Any = Adapter::getItem
Run Code Online (Sandbox Code Playgroud)

但是在这里我仍然需要一个实例Adapter来调用它.我看到的另一个变化是定义一个像这样的lambda:

val ref: (Int) -> Any = { a.getItem(it) }
Run Code Online (Sandbox Code Playgroud)

lambda kotlin

43
推荐指数
1
解决办法
6292
查看次数

标签 统计

kotlin ×1

lambda ×1