What would be the equivalent of that code in kotlin, nothing seems to work of what I try:

public interface AnInterface {
    void doSmth(MyClass inst, int num);
}

初始化:

AnInterface impl = (inst, num) -> {
    //...
}

推荐答案

如果AnInterface是Java,您可以使用SAM conversion:

val impl = AnInterface { inst, num -> 
     //...
}

否则,如果接口是Kotlin...

interface AnInterface {
     fun doSmth(inst: MyClass, num: Int)
}

...you can use the object syntax for implementing it anonymously:

val impl = object : AnInterface {
    override fun doSmth(inst:, num: Int) {
        //...
    }
}

Kotlin相关问答推荐

创建具有共同父类型的两种不同类型对象的列表的最有效方法是什么?

Android前台服务 list —Altbeacon

只能在元素区域中点击的Jetpack Compose列

Regex(Kotlin)仅匹配句子末尾的句号,而忽略中间的句号,如缩写

在 Kotlin 中,为什么我们要在闭包中捕获值

为什么使用 return instance ?: synchronized(this) { instance ?: PreferenceParameterState(context) } 时无法获得单例?

当 func 重载时,kotlin 如何确定调用哪个 func?

为什么 Kotlin 中的 Double 和 Long 类型不推荐直接转换为 Char?

如何将 `throw` 放置在辅助函数中但仍然具有空安全性?

如何在 jOOQ 中两次加入同一张表?

Kotlin 中二叉树的深度

参考 Kotlin 中的 Java 接口静态字段

如何修复 ViewPager2 中的Design assumption violated错误?

Android Kotlin StringRes 数量String

无法为 retrofit2.Call 调用无参数构造函数

将 Android Studio 升级到 3.1.0 后的 Android Support 插件错误

如何在 Spring WebFlux 的响应正文中流式传输二进制数据

如何将vararg作为数组传递给Kotlin中的函数?

内联 Kotlin 方法没有覆盖报告

Dagger 2 androidx fragment不兼容类型