didSet 的使用
- 在 OC 中,我们通常希望在给某一个变量赋值之后,去做一些额外的操作
- 最经典的应用就是在自定义 Cell 的时候,通过模型的设置方法完成 Cell 的填
-
var length: Int? { didSet { timeStr = String(format: "%02d:%02d:%02d", arguments: [length! / 3600, (length! % 3600) / 60, length! % 60]) } } var timeStr: String?
计算型属性(也可以说是 get 方法)
-
var title: String { get { return "Mr " + (name ?? "") } }
- 只实现 getter 方法的属性被称为计算型属性,等同于 OC 中的 ReadOnly 属性
- 计算型属性本身不占用内存空间
- 不可以给计算型属性设置数值
- 计算型属性可以使用以下代码简写
-
var title: String { return "Mr " + (name ?? "") }