Swift中对计算属性的理解和对之前的补充

时间:2020-12-11 15:01:02

这个功能的重点作用应该是在计算上。

对于一般的属性,要么直接存一个,要么直接读一个,计算属性则可以根据所设置内容,进行一些修改或计算之类的, 比如:

import UIKit

class sample {

    var no1 = 0.0, no2 = 0.0
var length = 300.0, breadth = 150.0 var middle:(Double,Double) { get {
return(length / 2, breadth / 2)
} // 如果没有加上括号, 那么默认就是 set(newValue) {}
set {
// 可以在set方法里动态修改其他属性和本属性
no1 = newValue.0-(length / 2)
no2 = newValue.1-(breadth / 2)
} // 补充
// set方法也可以写成
// set(value) {
// no1 = value.0-(length / 2)
// no2 = value.1-(breadth / 2)
// }
}
} var result = sample()
print(result.middle)
result.middle = (0.0, 10.0)
print(result.no1)
print(result.no2) var result = sample()
print(result.middle)
result.middle = (0.0, 10.0)
print(result.no1)
print(result.no2)

  

输出结果:

(150.0, 75.0)

-150.0

-65.0