加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift可选类型中“可选的可选”的目的是什么?

发布时间:2020-12-14 02:24:36 所属栏目:百科 来源:网络整理
导读:我在 Swift Tests source code中找到了一个有趣的功能: func test(_ v: A????,_ cast: (A????) - B?) 既然类型?只是Optional Type的语法糖,这意味着参数v的类型可以重写为Optional Optional Optional Optional A. 我知道这个函数用于测试可选类型,所以它肯
我在 Swift Tests source code中找到了一个有趣的功能:
func test(_ v: A????,_ cast: (A????) -> B?)

既然类型?只是Optional< Type>的语法糖,这意味着参数v的类型可以重写为Optional< Optional< Optional< Optional< A>>>>.

我知道这个函数用于测试可选类型,所以它肯定会超越参数v和cast,但实际使用的是“可选的可选项等”.输入Swift(如果有的话)?

当您访问数据时,这些有时会出现在Swift中.

例如,如果您有一个带有值的可选类型的字典,那么您在该字典中查找一个值:

let rockStars: [String: String?] = ["Sting": nil,"Elvis": "Presley","Bono": nil,"Madonna": nil]

let lastName = rockStars["Elvis"]
print(lastName as Any)

06001

发生这种情况是因为当密钥不存在时,字典查找可能会失败,并且在这种情况下它返回nil.因此,字典查找的返回类型必须是包含在可选项中的值类型.从rockStars字典中查找返回一个String ??.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读