[英]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.