/*
1.可选项有可能有值,有可能没值;有2种可能需要我们程序员自己去判断一下
2.可选项不能直接运算
可选项 -- 变量或者常量 指定类型后加一个 ?
可选项没有赋值,默认是一个 nil
可选项如果需要运算的话,需要强制解包.强制解包就是在可选项后边加入一个!.强制解包是程序员自己加的,自己加的自己负责.
4. 如果可选项没有值,我们进行了强制解包,会发生崩溃!
fatal error: unexpectedly found nil while unwrapping an Optional value
*/
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
var num: Double? = 10.1
print(num)
// 1. 非可选项是 10.1
// 2. var num: Double? = 10.1 -> Optional(10.1)
// 3. var num: Double? -> nil
let num2: Double = 20.2
// fatal error: unexpectedly found nil while unwrapping an Optional value
// 可以通过一个 if 来判断空
// if num != nil {
//
// let sum = num! + num2
// print(sum)
// }
// 苹果推出一个新的运算符 ??
// ?? 前边的可选项如果是nil,则取后边的值
// ?? 前边的可选项如果不是nil,则取 可选项解包后的值
let sum = (num ?? 10) + num2
print(sum)
}