我正在从属性获取返回值。可能吗?

时间:2018-09-28 16:55:03

标签: swift

class TestClass {
    var testString: String = {
        print("about to initialize the property")
        return "TestString"
    }()
}

let testClass = TestClass()
print("before first call")
print(testClass.testString)
print(testClass.testString)

在上面的程序中,我从一个属性获取返回值。是否有可能,因为我听说我们一直在为方法做这件事。

func method() -> String {
    return "a string"
}

这就是我所知道的。谁能解释我的疑问?

2 个答案:

答案 0 :(得分:0)

是的,自Swift 3起是可能的,并且建议这样做。如果只需要获取一个值而无需传递其他值来进行计算,则是推荐的方法。

例如,在Swift 2中,您有UIColor.redColor()返回红色,但是从Swift 3开始,您需要使用UIColor.redColor

答案 1 :(得分:0)

但是有可能。这些称为计算属性,并在Swift Documentation

中进行了详细说明