pka*_*ing 20 java eclipse scala option
我正在研究一个混合的java/scala项目,我试图从Java调用scala对象的方法.此方法将Option[Double]参数作为参数.我认为这会奏效:
Double doubleValue = new Double(1.0);
scalaObj.scalaMethod(new Some(doubleValue));
Run Code Online (Sandbox Code Playgroud)
但Eclipse告诉我"构造函数Some(Double)未定义".
我应该以scala.Some不同的方式调用构造函数吗?
Vas*_*iuk 41
在Scala中,您通常会按如下方式升级到Option:
scala> val doubleValue = Option(1.0)
doubleValue: Option[Double] = Some(1.0)
Run Code Online (Sandbox Code Playgroud)
()是伴侣对象apply[A](A obj)方法的语法糖Option.因此,它可以直接在Java中调用:
Option<Double> doubleValue = Option.apply(1.0);
Run Code Online (Sandbox Code Playgroud)