一段时间以来,我一直在努力将 scala 与可能返回 null 的 java 方法集成。我想出了以下有用的实用程序:
// produce an Option, nulls become None
object Maybe {
def apply[T](t:T) = if (t==null) None else Some(t)
}
Maybe(javaClass.getResultCouldBeNull()).map( result => doSomeWork(result) )
我对这个解决方案有几个问题:
- 是否有更好或更标准的模式可供使用?
- 我是否在复制已经存在的东西?
- 此功能是否存在隐藏问题?
最佳答案
Scala 的内置 Option是您打算 reshape 的东西。
在那种情况下:
scala> val sOpt: Option[String] = Option(null)
sOpt: Option[String] = None
关于java - Maybes 是 Scala 的好模式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2946739/