初始化
Option(x)
def apply[A](x: A): Option[A] = if (x == null) None else Some(x)
方法
1.map
@inline final def map[B](f: A => B): Option[B] =
if (isEmpty) None else Some(f(this.get))
2.filter
@inline final def filter(p: A => Boolean): Option[A] =
if (isEmpty || p(this.get)) this else None
3.flatMap
技巧:当option(option())可以使用flatMap
@inline final def flatMap[B](f: A => Option[B]): Option[B] =
if (isEmpty) None else f(this.get)
判断
1.nonEmpty
�如果是Some 返回true 如果是None返回false
2.isEmpty
如果是Some 返回false 如果是None返回true
获取
1.get
如果值是None会抛异常
2.getOrElse
如果值是None则获取到默认值