我知道Swift会按顺序读取行,但是如果我在使用变量定义了一个语句后更改了该变量,我需要做什么函数/动作来更新变量?举例来说:
var currentLocation = "Room 130" let message = "I am currently in \(currentLocation)" currentLocation = "Room 129"
如何在更改var声明后获得“我目前在Room 129”的消息?
var
cu6pst1q1#
一种方法是像这样使用getter:
var currentLocation = "Room 130" var message: String { return "I am currently in \(currentLocation)" } currentLocation = "Room 129" print(message)
按照标题中的建议更新let语句是不可能的。let是不改变的常量。
let
tuwxkamq2#
let的全部意义在于结果是一个常数。一旦设置,就不能更改。正如其他人所说的,你可以把它变成一个计算属性,但这样它就不会是一个let常数了。
2条答案
按热度按时间cu6pst1q1#
一种方法是像这样使用getter:
按照标题中的建议更新
let
语句是不可能的。let
是不改变的常量。tuwxkamq2#
let
的全部意义在于结果是一个常数。一旦设置,就不能更改。正如其他人所说的,你可以把它变成一个计算属性,但这样它就不会是一个
let
常数了。