需要在 Kotlin 中重写的空函数的编码约定

Coding convention for empty functions that need to be overridden in Kotlin

根据非常简短的 Coding Conventions 在 Kotlin 中写下空函数的最佳方式没有答案。

示例:

ani.setAnimationListener(object: Animation.AnimationListener {

    override fun onAnimationRepeat(animation: Animation?) = Unit
    override fun onAnimationStart(animation: Animation?) {}

    override fun onAnimationEnd(animation: Animation?) =
        activity.runOnUiThread { loadLists() }
})

这里只用到了AnimationListener(Android)的3个必要方法中的一个

应该使用哪种类型的空方法? Single Expressionfun name() = Unit)还是Java中使用的传统方式(fun name() {})?

我个人更喜欢 = Unit-Way,因为这似乎意味着将函数缩短到一行的方式。但是 {} 更矮但更老,而且可能更丑。

有什么 better/shorter 方法可以执行此代码吗?

您已将 link 添加到 Coding Conventions 中,您的问题似乎确实有答案

Unit

If a function returns Unit, the return type should be omitted:

fun foo() { // ": Unit" is omitted here

}

所以我相信

fun foo() {}

fun foo() {
}

应该是答案