很抱歉提出一个愚蠢的问题。但我对此感到困惑:
map()
该代码的含义是否相同:
var debugMessage: String {
return "Level 1"
}
或者是关闭?
答案 0 :(得分:1)
第一个:
var debugMessage: String {
return "Level 1"
}
是
的简短形式var debugMessage: String {
get { return "Level 1" }
}
这是一个只带有getter的计算属性声明。
第二个只是一个带初始化的简单存储属性声明。
如您所见,一个是计算属性,另一个是存储属性。因此,它们的差异与计算属性和存储属性之间的差异大致相同。
以下是其中一些。
var
声明的存储属性答案 1 :(得分:0)
您提供的第一个示例是计算变量。如果它始终返回Level 1
,那么这两个示例会产生相同的结果。
但是,一般来说,第二种方法只为变量提供i nitial值,而计算变量可以更改它的返回值。