Scala Option
Scala Option类型用来表示一个值是可选的(有值或无值)
Option[T] 是一个类型为 T 的可选值的容器:
- 如果值存在, Option[T] 就是一个 Some[T]
- 如果不存在, Option[T] 就是对象 None
Option.orNull
参数:没有(当属性用)
返回:如果Option不为None返回Some的值否则返回null
例一:返回Some的值
scala> val v = Some("Hello Option") v: Some[String] = Some(Hello Option) scala> v.orNull res38: String = Hello Option
例二:返回null
scala> val v = None v: None.type = None scala> v.orNull res39: Null = null
Option.getOrElse(value)
参数:值
返回:如果Option不为None返回Some的值否则返回参数的值
例三:返回Some的值
scala> val v = Some("Hello Option") v: Some[String] = Some(Hello Option) scala> v.getOrElse("New Value") res46: String = Hello Option
例四:返回参数的值
scala> val v = None v: None.type = None scala> v.getOrElse("New Value") res47: String = New Value
Option.orElse(Some(value))
返回Option里的Some或从参数传递进去的Some
参数:Some
返回:如果Option不为None返回Some否则返回参数的Some
例五:返回option的Some
scala> val v = Some("Hello Option") v: Some[String] = Some(Hello Option) scala> v.orElse(null) res43: Option[String] = Some(Hello Option)
例六:返回参数的Some
scala> val v = None v: None.type = None scala> v.orElse(Some("New Value")) res44: Option[String] = Some(New Value)