gpt4 book ai didi

java - 在 Java 中使用 Scala Function2 对象

转载 作者:行者123 更新时间:2023-11-30 08:53:46 24 4
gpt4 key购买 nike

我有一个 scala 程序,其中包含一个扩展 Function2 的单例。我想知道是否可以序列化此对象并将其发送到 Java 程序,以便在该程序上使用它?

我注意到 Java 没有 Function2 类或接口(interface),所以我不确定这是否可行。

如果无法发送到 Java 程序,如何将它发送到不同的 Scala 程序并适本地利用它?

单例看起来像这样。

object add extends Function2[Int, Int, Int] {

override def apply(a: Int, b: Int): Int = a + b
}

最佳答案

Scala 以一种旨在支持与 Java 的互操作性的方式编译为 JVM 字节码。在这种情况下,如果您设置了 SBT 构建(或者如果您编译 Scala 代码并将结果和 Scala 库 jar 包含在类路径中),您只需编写以下内容:

public class Foo {
public static void main(String[] args) {
System.out.println(add.apply(1, 2));
}
}

就是这样。您没有获得很好的 add(1, 2) 语法糖,但除此之外它非常简单。

在更高级的情况下可能会出现一些复杂情况,但有很多关于如何解决这些问题的文档(当然,我们随时欢迎您在这里提出后续问题)。

关于java - 在 Java 中使用 Scala Function2 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29679564/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com