如何从 Java 调用 scala 的 Option 构造函数

2024-02-08

我正在开发一个混合 java/scala 项目,并且尝试从 Java 调用 scala 对象的方法。该方法需要一个Option[Double]作为参数。我认为这会起作用:

Double doubleValue = new Double(1.0);
scalaObj.scalaMethod(new Some(doubleValue));

但 Eclipse 告诉我“构造函数 Some(Double) 未定义”。

我应该调用构造函数吗scala.Some不同吗?


在 Scala 中,通常按如下方式提升到 Option:

scala> val doubleValue = Option(1.0)
doubleValue: Option[Double] = Some(1.0)

()是一个语法糖apply[A](A obj)的方法Option的伴生对象。因此,在Java中可以直接调用:

Option<Double> doubleValue = Option.apply(1.0);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Java 调用 scala 的 Option 构造函数 的相关文章

随机推荐