我正在开发一个混合 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(使用前将#替换为@)