Swift Optional

作者: YourSummer | 来源:发表于2022-06-13 16:05 被阅读0次

    设想一种情况

    • 后端返回给我们字段值, 这个字段值可能是空对象
    • 或者我们与后端约定了一个字段 name, 但是根据业务name字段也可能不返回, 及我们在定义model的时候

    要么

    var name = ""
    

    要么:

    var name: String?
    

    个人建议第二种, 明确表示name可能不存在, 符合业务语义

    总结

    所以在Swift中可选型是为了表达一个变量为nil的情况,

    Swift中任何数据类型都可以是可选的, 亦即都可能为nil

    表现形式

    Optional是一个泛型枚举结构

    enum Optional<Wrapped> {
        case none
        case some(Wrapped)
    }
    

    所以定义可选型有两种方式

    1. ? (推荐使用)
    let name: String?
    // 可以给一个初始值
    let name: String? = nil
    
    1. Optional (不推荐)
    let name: Optional<String> = nil
    

    相关文章

      网友评论

        本文标题:Swift Optional

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