java - 如何在 Java 代码中使用 scala.None

标签 java scala singleton scala-java-interop

Possible Duplicate:
Accessing scala.None from Java

在 Java 中,您可以使用构造函数创建 Some 的实例,即 new Some(value),但 None 没有伙伴类.如何将 None 从 Java 传递给 Scala 函数?

最佳答案

scala.None$.MODULE$ 东西并不总是类型检查,例如这不会编译:

scala.Option<String> x = scala.None$.MODULE$;

因为 javac 不知道 Scala 的声明站点差异,所以你得到:

J.java:3: incompatible types
found   : scala.None$
required: scala.Option<java.lang.String>
    scala.Option<String> x = scala.None$.MODULE$ ;

这确实可以编译:

scala.Option<String> x = scala.Option.apply(null);

所以这是获得在更多情况下可用的 None 的另一种方法。

关于java - 如何在 Java 代码中使用 scala.None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1997433/

相关文章:

java - 实例变量隐藏继承

Android:跨应用程序生命周期持久化数据

c# - 单例类的两个实例是否具有相同的属性值?

java - 更新查询返回没有更新的列

java - Applet 无法运行并崩溃 7u55 插件在 chrome、Firefox 和 IE 中工作正常

java - 如何判断给定的数字是八进制还是不是八进制?

Scala Spark 行级错误处理

scala - 奇怪的错误消息 : bad symbolic reference. package.class 中的签名指的是包 org 中的术语 apache,该术语不可用

scala - 如何使用 phantom-dsl for cassandra 在查询子句中以编程方式指定列

java - 线程池连接 vs 单例设计模式获取单个数据库连接