一段时间以来,我一直在努力将 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) )
我对这个解决方案有几个问题:
- 是否有更好或更标准的模式可供使用?
- 我是在复制已经存在的东西吗?
- 这个功能有隐藏的陷阱吗?