【发布时间】:2011-04-21 13:57:12
【问题描述】:
我有一个接受 Long 值的 Java 方法:
(in Java)
public void setValue(Long value);
我了解 Scala null 不扩展任何值类型,包括 Long。因此,当我尝试将 null 传递给它时,会出现编译错误:
(in Scala)
javaThing.setValue(null)
==> type mismatch; found : Any required: java.lang.Long
编辑:啊!忽略上面的sn-p。我把问题简单化了,惹上了麻烦。其实问题出在我使用Option[Long],如下:
javaThing.setValue(calcValue.getOrElse(null))
我认为,问题在于,当给定一个空参数时,getOrElse 的计算结果为 Any 类型。
救命!
【问题讨论】:
-
哈哈,我想不出比在 stackoverflow 上提问更快的方法来在 13 分钟内到达谷歌热门列表的顶部:google.com/…