使用Scala中的Option包装Java中的null返回方法?

假设我有一个方法session.get(str: String): String但不知道它是否会返回一个string或null,因为它来自Java。

有没有一种更简单的方法来对待这个Scala而不是session.get("foo") == null ? 也许有些魔法适用于ToOption(session.get("foo")) ,然后我可以用Scala的方式处理它

 ToOption(session.get("foo")) match { case Some(_) =>; case None =>; } 

Option伴侣对象的apply方法用作可空引用的转换函数:

 scala> Option(null) res4: Option[Null] = None scala> Option(3) res5: Option[Int] = Some(3) 

Option对象有一个apply方法,它完全符合:

 var myOptionalString = Option(session.get("foo"));