代码:
import Foundation
//Swift中的计算属性
//Setter and Getter
//get {
// return someValue
//}
//set{
// setSomeValue
//}
class WalletClass {
var money = 0.0
var cal: Double {
get {
let RMB = money * 6.1
return RMB
}
set(RMB){ //set后面有参数
money = RMB/6.1
}
}
}
var mywallet = WalletClass()
mywallet.cal = 20 //此处也可以写成 (20)
print(mywallet.cal)
print(mywallet.money)
//***********************************************************
//*如果set后面没有参数,可以使用默认的名称newValue
//***********************************************************
class DegreeCalss{
var degree = 0.0
var cal: Double {
get {
let centigradedegree = (degree - 32) / 1.8
return centigradedegree
}
set {
degree = 1.8 * newValue + 32
}
}
}
var degreeClass = DegreeCalss()
degreeClass.cal = (10.0)
print(degreeClass.cal)
print(degreeClass.degree)
//*************************************************************
//****只使用getter *********************************************
//************************************************************
class PersonName {
var name: String = ""
var returnName: String {
if (name.isEmpty){
return "NULL"
} else {
return name
}
}
}
var litao = PersonName()
print(litao.returnName)
var tomwang = PersonName()
tomwang.name = "Tom"
print(tomwang.returnName)
输出:
20.0
3.27868852459016
10.0
50.0
NULL
Tom
Program ended with exit code: 0