一种可以在当前值可能为nil的可选值上请求和调用属性、方法及下标的方法
1 使用可选链式调用代替强制展开
可选链式调用的返回结果与原本的返回结果具有相同的类型,但是被包装成了一个可选值。
1 | class Person { |
2 为可选链式调用定义模型类
1 | class Person2 { |
3 通过可选链式调用访问属性
1 | let andy = Person2() |
4 通过可选链式调用调用方法
1 | if let firstRoomName = andy.residence?[0].name { |
5 访问可选类型的下标
1 | var testScores = ["Dave": [86, 82, 84], "Bev": [79, 94, 81]] |
6 连接多层可选链式调用
1 | if let andyStreet = andy.residence?.address?.street { |
7 在方法的可选返回值上进行可选链式调用
1 | if let buildingIdentifier = andy.residence?.address?.buildingIdentifier() { |
playground文件在andyRon/LearnSwift