繁体   English   中英

是否可以从 Kotlin 调用 Scala function?

[英]Is it possible to call a Scala function from Kotlin?

我正在从事一个同时涉及 Kotlin、Java 和 Scala 的项目。 在一个场景中,我需要从 Kotlin 执行 Scala function。 我该怎么做?

与您通常在 Kotlin 中执行函数的方式相同。

只需将 Scala 代码编译为字节码并将其添加到 Kotlin 类路径中。

例子:

在文件夹<classpathFolder>中放置:

ScaTest.scala

class ScaTest() {
    import math._
    def mathFunction(num: Int) = {
        val numSquare = num*num
        (cbrt(numSquare) + log(numSquare)).toInt
    }
}

使用scalac ScaTest.scala编译

它应该生成文件ScaTest.class

在其他一些文件夹中创建 Kotlin 文件:

KotTest.kt

fun main() {
    val ss = ScaTest()
    println(ss.mathFunction(4))
}

使用kotlinc -classpath <classpathFolder> KotTest.kt

这应该产生文件KotTestKt.class

使用kotlin -classpath <classpathFolder> KotTestKt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM