optional可选值

  • 在Swift中, 变量(常量)可能有值,可能为 nil ,称为可选
    • 使用?标识某个值是一个可选值
//num 可以是一个整数,也可以是nil,如果为 nil 不能参与计算
var num: Int? = 10
  • 可选项的值不能直接进行运算
    • 使用!向系统表明,我这个可选值里一定有值 (强行解包)
    • 需要考虑!标识的变量里是否真的有值
      • "unexpectedly found nil while unwrapping an Optional value" --> 对一个值为 nil 的可选项进行强制解包
let r = num! + 10 //如果num为nil 则会报上面的错误
//使用的时候 可以判断是否为nil 不为nil的时候才进行运算     
if (a != nil){
    let r = num! + 10
    print(r)
}

  • ??运算符
    • Swift 中 ?? 用于判断 常量/变量 的数值是否为nil,如果是nil,则用后面的值代替
let r = (num ?? 0) + 10
print(r)

如果num不为nil ,正常进行运算;如果num为nil,则用0代替。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Optional 可选值 Optional 是 Swift 的一大特色,也是 Swift 初学者最容易困惑的问题 ...
    百舸争流111阅读 1,252评论 0 2
  • 本文所有英文为本人自己翻译,英语学习中,错误之处,敬请指出,万分感谢! 先看看开发文档的解释吧 OptionalG...
    iOS倔强青铜阅读 4,227评论 0 0
  • Optional 是 Swift 的一大特色,也是 Swift 初学者最容易困惑的问题 定义变量时,如果指定是可选...
    MarkusFeng阅读 2,701评论 0 0
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 9,473评论 1 10
  • 前言 Swift是一门新的适用于iOS,macOS,watchOS,tvOS开发的编程语言。尽管如此,Swift的...
    BoomLee阅读 5,782评论 0 4

友情链接更多精彩内容