常量變量
常量的值一旦被設(shè)定就不能改變,而變量的值可以隨意更改着逐。
常量和變量必須在使用前聲明崔赌,用 let 來聲明常量意蛀,用 var 來聲明變量。請看下面的例子:
let maxNumber = 10
var minNumber= 0
這兩行代碼可以被理解為:“聲明一個名字是 maxiNumber 的新常量峰鄙,并給它一個值 10 浸间。然后太雨,聲明一個名字是minNumbert 的變量并將它的值初始化為 0 吟榴。”
你可以在一行中聲明多個常量或者多個變量囊扳,用逗號隔開:
var x = 0.0, y = 0.0, z = 0.0
注意:如果你的代碼中有不需要改變的值吩翻,請使用 let 關(guān)鍵字將它聲明為常量。只將需要改變的值聲明為變量锥咸。
類型標(biāo)注
當(dāng)你聲明常量或者變量的時候可以加上類型標(biāo)注(type annotation)狭瞎,說明常量或者變量中要存儲的值的類型。如果要添加類型標(biāo)注搏予,需要在常量或者變量名后面加上一個冒號和空格熊锭,然后加上類型名稱
例子:給 name變量添加了類型標(biāo)注,表示這個變量可以存儲 String 類型的值
var name : String?
可以在一行中定義多個同樣類型的變量雪侥,用逗號分割碗殷,并在最后一個變量名之后添加類型標(biāo)注:
var a,b,c : Double
注意:一般來說很少需要寫類型標(biāo)注。如果你在聲明常量或者變量的時候賦了一個初始值速缨,Swift可以推斷出這個常量或者變量的類型
常量和變量的命名
你可以用任何你喜歡的字符作為常量和變量名锌妻,包括 Unicode 字符:
let π = 3.14159
let 你好 = "Bob"
let ???? = "dogcow"
常量與變量名不能包含數(shù)學(xué)符號,箭頭旬牲,保留的(或者非法的)Unicode 碼位仿粹,連線與制表符。也不能以數(shù)字開頭原茅,但是可以在常量與變量名的其他地方包含數(shù)字吭历。
一旦你將常量或者變量聲明為確定的類型,你就不能使用相同的名字再次進(jìn)行聲明擂橘,或者改變其存儲的值的類型晌区。同時,你也不能將常量與變量進(jìn)行互轉(zhuǎn)贝室。
注意:如果你需要使用與Swift保留關(guān)鍵字相同的名稱作為常量或者變量名契讲,你可以使用反引號(`)將關(guān)鍵字包圍的方式將其作為名字使用。無論如何滑频,你應(yīng)當(dāng)避免使用關(guān)鍵字作為常量或變量名捡偏,除非你別無選擇。
輸出常量和變量
可以用print(_:separator:terminator:)函數(shù)來輸出當(dāng)前常量或變量的值
print(你好)
// 輸出 "Bob"
Swift 用字符串插值(string interpolation)的方式把常量名或者變量名當(dāng)做占位符加入到長字符串中峡迷,Swift 會用當(dāng)前常量或變量的值替換這些占位符银伟。將常量或變量名放入圓括號中你虹,并在開括號前使用反斜杠將其轉(zhuǎn)義:
print("The current value of friendlyWelcome is \(你好)")
// 輸出 "The current value of friendlyWelcome is Bob!
注釋
Swift 中的注釋與 C 語言的注釋非常相似。單行注釋以雙正斜杠(//)作為起始標(biāo)記:
// 這是一個注釋
你也可以進(jìn)行多行注釋彤避,其起始標(biāo)記為單個正斜杠后跟隨一個星號(/*)傅物,終止標(biāo)記為一個星號后跟隨單個正斜杠(*/):
/* 這是一個,
多行注釋 */
與 C 語言多行注釋不同,Swift 的多行注釋可以嵌套在其它的多行注釋之中琉预。你可以先生成一個多行注釋塊董饰,然后在這個注釋塊之中再嵌套成第二個多行注釋。終止注釋時先插入第二個注釋塊的終止標(biāo)記圆米,然后再插入第一個注釋塊的終止標(biāo)記:
/* 這是第一個多行注釋的開頭
/* 這是第二個被嵌套的多行注釋 */
這是第一個多行注釋的結(jié)尾 */
通過運用嵌套多行注釋卒暂,你可以快速方便的注釋掉一大段代碼,即使這段代碼之中已經(jīng)含有了多行注釋塊娄帖。
分號
與其他大部分編程語言不同也祠,Swift 并不強(qiáng)制要求你在每條語句的結(jié)尾處使用分號(;),當(dāng)然近速,你也可以按照你自己的習(xí)慣添加分號诈嘿。有一種情況下必須要用分號,即你打算在同一行內(nèi)寫多條獨立的語句:
let cat = "??"; print(cat)
// 輸出 "??"