Swift中的常量、变量、可选值
2019-09-27 本文已影响0人
下班不写程序
1. 常量与变量
使用 let 定义常量 一经赋值,不能改变
Snip20190920_14.png
使用 var 定义变量 赋值后,可以改变
Snip20190920_15.png
2. 自动推导
定义: 程序可以通过 等号右边 的值, 准确的 推导出 等号左边 的常量或者变量的类型.
快捷键: option+鼠标左键 (数值类型只有Int和Double) Snip20190920_16.png
3. Swift中没有隐式转换,均需要手动保证类型一致
发现问题: Snip20190920_17.png 解决办法:类型转换为同一类型, 在运算 Snip20190920_19.png注1: 声明指定类型的变量 Snip20190920_21.png
总结: 类型相同才能运算(运算就是计算或者判断)
注2: 一般我们不确定 是否 会改变值, 那么直接用 let , 在 需要改变 的时候在修改成 var
4. Optional可选值(可选项)
- 定义一个常量或者变量, 它可能有值, 也可能为nil, 我们称之为可选值
- 可选值 和 必选值 相差只是一个 nil
- 定义一个常量, 而且是可选值 image.png
- 可选值不能直接参与运算 image.png
- 常量可选值, 一般没有什么意义, 并且没有默认值,需要实例化的时候直接赋值 Snip20190920_22.png
- 变量可选值的默认值 为nil Snip20190920_23.png
- 可选值存在的意义: Swift中认为nil也是一个值,也有自己的实际意义. 因为Swift中不存在非零即真的概念, 所以可以很好地运用可选值, 不为nil就有值.
强行解释: let 一个常量a, 且赋值为nil, 赋值不上,报错,因为常量a为必选值,不存在nil这个值
注: 对于本篇的截图中存在的分号表示歉意, OC写的多了, 总习惯性的加上, 抱歉...之后会更新到新的图片.
最后, 以上内容如有问题, 欢迎指正, 或者有其他的问题, 也欢迎留言讨论~