• scala Option 里的 orNull orElse getOrElse 区别和使用


    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)
  • 相关阅读:
    python数据类型:字典Dictionary
    python数据类型:元组
    python数据类型:列表List和Set
    python数据类型:字符串
    python数据类型:Number数字
    Python控制语句
    Python运算符
    python基础语法
    Linux shell Script初识
    linux awk详解
  • 原文地址:https://www.cnblogs.com/keitsi/p/5333473.html
Copyright © 2020-2023  润新知