Swift中 问号 感叹号 点号 用法总结

本文深入探讨Swift语言中可选类型的使用,包括问号(?)用于声明Optional类型,感叹号(!)实现强制解包,双问号(??)提供默认值。同时,解析点号(.)在属性调用和函数调用中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问号:
用来声明一个Optional的数据结构 其本质上是个enum, 里面有case None / case Some.
而想要声明一个可选类型的变量或者常量时 只需要在数据类型后面加上?

感叹号:
因为Optional只有在解包后不为nil才可以参与运算,所以我们会对可选类型进行强制解包,直接在那个变量或者常量名之后加!即可。

双问号:
就像是lamda表达式一样 放在变量或者常量名后面 如果这个不是Nil 就用这个的值 如果是的话 那就用后面紧跟着的值。

var a: Int?
let b = 4
print((a ?? 0) + b)

但是点号是什么意思呢?看到很多前面什么都没有 只有一个点号后面直接加 属性或者函数名的? 特殊的语法吗?
关于这个问题,其实要不同情况具体分析:
比如说使用Promise包,其语句中包含了.then .catch .done等等的关键字。这个就是promise这种数据结构(?)的特殊用法。
而在有些情况,就是像Java一样,用这个点号来调用对象的属性或者函数的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值