猿问

有没有办法将java方法声明为kotlin的中缀

有没有办法从 java 类声明一个方法,以便它可以作为infixkotlin 的函数调用,如下所示:


public class Foo {

  public void doFoo (String bar) {}

}

然后从 kotlin 文件


foo doFoo "bar"


慕神8447489
浏览 122回答 2
2回答

宝慕林4294392

从 Kotlin 1.3 开始,没有:由于 Java 无法标记使用运算符语法对其有意义的方法,因此 Kotlin 允许使用具有正确名称和签名的任何 Java 方法作为运算符重载和其他约定(invoke()等)。使用中缀调用语法调用 Java 方法是不允许。

德玛西亚99

您可以添加一个infix扩展来从 Kotlin 获取该语法:infix fun Foo.doFoo(bar: String) {    return doFoo(bar)}
随时随地看视频慕课网APP

相关分类

Java
我要回答