[英]What's the difference between "var" and "let" in Swift?
我知道var
用於定義變量,而let
用於定義常量。
我的問題是,我“能夠”改變我的let
常量。 例如,我的測試代碼接受用戶的兩個輸入,他們的姓名和電子郵件。 當一個按鈕被按下時,它會更新兩個標簽。
但是,當我更改輸入時,它也會更改標簽。 那么為什么它不會崩潰或其他任何事情呢?
class ViewController: UIViewController {
@IBOutlet weak var emailInput: UITextField!
@IBOutlet weak var nameInput: UITextField!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var label2: UILabel!
@IBAction func actionButton(_ sender: Any) {
let text = nameInput.text
let email = emailInput.text
label.text = text
label2.text = email
}
}
var
是一個變量,一旦定義就可以更改
let
是一個常量,一旦定義就不能改變。
IBOutlet
需要是一個變量( var
),因為這些值是在創建對象之后定義的。
在這里你沒有改變你的變量:
let text = nameInput.text
let email = emailInput.text
label.text = text
label2.text = email
因為標簽是變量 ( var
),所以它們可以更改。 每次單擊按鈕時,常量 ( let
) 都會重新生成,因此它們不會被更改,而是重新定義為新常量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.