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

标签 java kotlin dsl

有没有办法从 java 类声明一个方法,以便可以将其作为 infix 进行调用来自 kotlin 的函数,如下所示:

public class Foo {
  public void doFoo (String bar) {}
}

然后从 kotlin 文件

foo doFoo "bar"

最佳答案

As of Kotlin 1.3, no:

Since Java has no way of marking methods for which it makes sense to use the operator syntax, Kotlin allows using any Java methods with the right name and signature as operator overloads and other conventions (invoke() etc.) Calling Java methods using the infix call syntax is not allowed.

关于java - 有没有办法将 java 方法声明为 kotlin 的中缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55023749/

相关文章:

android - 如何收听已连接电源的 Android > 8

接口(interface)中的 Kotlin 内联函数

android - 打破或继续跳过类边界 kotlin

kotlin - 如何在自定义 Kotlin DSL 上实现使用规则

java - 如何在 java 中生成 160 位素数?

java - 连接 BassBoost 时 MediaPlayer 不播放 - 错误 (-22, 0)

java - 在 Firebase java 中同步验证 IdToken

java - 无法使用 JPA 2 Criteria API 从 Oracle View 中选择列

design-patterns - 是否有用于设计 DSL 的设计指南、教程或模式?

ruby-on-rails - 如何在不创建空模型的情况下创建 rails_admin 导航标签?