从java调用scala - 性能?

时间:2012-01-26 08:54:29

标签: java performance scala

由于实现简单,我在Scala中编写了解析器。 我需要从我的java应用程序中调用它。我知道我需要在类路径中包含scala库等。 但性能呢?与纯java解析器调用相比,它的性能是否会降低?

2 个答案:

答案 0 :(得分:8)

从Java调用Scala不会产生任何开销:执行时只需要字节码。这并不是说你必须经历Java和Scala之间的某种桥梁,就像你从Java调用我可能不知道的那样,Python。

此特定算法的Scala实现是运行得更快还是更慢取决于算法的性质以及实现它的方式。鉴于你不会以两种语言同样的方式实现它,因此很难预测。

答案 1 :(得分:3)

理论上不应该有任何影响,因为Scala使用与Java相同的JVM和字节码,并且我看到的所有性能测试都给出了两种语言大致相同的速度。

也就是说,调用Java库应该是相同的(性能方面),或者类似的差异应该无关紧要。