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)