美文网首页移动端开发
Swift 可选值保底值便捷写法

Swift 可选值保底值便捷写法

作者: shidaying | 来源:发表于2020-09-27 15:21 被阅读0次

常规写法

可选值为了不报错,会给个保底值, 避免取不到值

let name: String?
let someValue = name ?? ""

这样写没问题,但是比较繁琐, 不够清晰明了

简便写法

extension Swift.Optional  {    
    /// 返回可选值内容,或是默认值
    /// - Parameter default: 默认值
    func or(_ default: Wrapped) -> Wrapped {
        return self ?? `default`
    }
}

上面例子就可改为

let name: String?
let someValue = name.or("")

判断可选值是否为空

每次都要写 是否等于 nil, 也有点麻烦

let name: String?
if name == nil {  }

和问题二有点相似,也可以加个扩展方法

extension Swift.Optional  {    
    /// 是否为nil
    var isNil: Bool {
        switch self {
        case .none:
            return true
        case .some:
            return false
        }
    }
}

上面的判断就可以写为

if name.isNil {  }

相关文章

  • Swift 可选值保底值便捷写法

    常规写法 可选值为了不报错,会给个保底值, 避免取不到值 这样写没问题,但是比较繁琐, 不够清晰明了 简便写法 上...

  • Swift同时使用多个可选值

    此可选值非彼可选值(option)参考:马克叔_Macro ObjectiveC: Swift:

  • Swift:(五)可选类型

    Swift 可选(Optionals)类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选...

  • Swift:基础(五)可选类型

    Swift 可选(Optionals)类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选...

  • iOS Swift 可选(Optionals)类型

    Swift的可选类型,用于处理值缺失的情况。可选表示"那儿有一个值,并且它等于x"或者"那儿没有值"。Swift语...

  • Swift 可选(Optionals)类型

    Swift 可选(Optionals)类型Swift 的可选(Optional)类型,用于处理值缺失的情况。可选表...

  • 学习Swift (第二天)

    一、可选类型 可选类型(Optionals),表示这个变量可能有值或者没有值。 //写法//var value :...

  • optional可选值

    在Swift中, 变量(常量)可能有值,可能为 nil ,称为可选使用?标识某个值是一个可选值 可选项的值不能直接...

  • Swift 可选值

    Optional 可选值 Optional 是 Swift 的一大特色,也是 Swift 初学者最容易困惑的问题 ...

  • swift可选值

    之前自己感觉这两个东西很好理解,但是真正运用起来的时候还是忘记了,感觉还是理解的不深刻。还是记下来吧。参考:htt...

网友评论

    本文标题:Swift 可选值保底值便捷写法

    本文链接:https://www.haomeiwen.com/subject/haqluktx.html