注意:這不是教程……僅僅是個(gè)人筆記,難免有疏漏或者錯(cuò)誤堕虹,但在下會(huì)竭盡所能追求卓越,追求極致英文大師級(jí)閱讀體驗(yàn)喜歡原汁原味的同學(xué)們請(qǐng)移步蘋果官方文檔
The Swift Programming Language (Swift 2.2)
聲明常量和變量
常量和變量必須在使用前聲明芬首,用let來聲明常量赴捞,用var來聲明變量:
let maximumNumberOfLoginAttempts = 10
var currentLoginAttempt = 0```
可以在一行中聲明多個(gè)常量或者多個(gè)變量,用逗號(hào)隔開:
var x = 0.0, y = 0.0, z = 0.0```
注意:
如果你的代碼中有不需要改變的值郁稍,請(qǐng)使用let關(guān)鍵字將它聲明為常量赦政。只將需要改變的值聲明為變量。
類型標(biāo)注
當(dāng)你聲明常量或者變量的時(shí)候可以加上類型標(biāo)注(type annotation)耀怜,說明常量或者變量中要存儲(chǔ)的值的類型恢着。如果要添加類型標(biāo)注,需要在常量或者變量名后面加上一個(gè)冒號(hào)和空格财破,然后加上類型名稱:
var welcomeMessage: String```
你可以在一行中定義多個(gè)同樣類型的變量掰派,用逗號(hào)分割,并在最后一個(gè)變量名之后添加類型標(biāo)注:
var red, green, blue: Double```
注意:
一般來說你極少需要寫類型標(biāo)注左痢。如果你在聲明常量或者變量的時(shí)候賦了一個(gè)初始值靡羡,Swift可以推斷出這個(gè)常量或者變量的類型,請(qǐng)參考類型安全和類型推斷俊性。在上面的例子中略步,沒有給welcomeMessage賦初始值,所以變量welcomeMessage的類型是通過一個(gè)類型標(biāo)注指定的磅废,而不是通過初始值推斷的纳像。
常量和變量的命名
你可以用任何你喜歡的字符作為常量和變量名荆烈,包括 Unicode 字符:
let π = 3.14159
let 你好 = "你好世界"
let ???? = "dog cow"```
*然并卵啊……名字起成這樣拯勉,瞬間暴露學(xué)歷了好么……我才不。*
常量與變量名不能包含數(shù)學(xué)符號(hào)憔购,箭頭宫峦,保留的(或者非法的)Unicode 碼位,連線與制表符玫鸟。也不能以數(shù)字開頭导绷,但是可以在常量與變量名的其他地方包含數(shù)字。
一旦你將常量或者變量聲明為確定的類型屎飘,你就不能使用相同的名字再次進(jìn)行聲明妥曲,或者改變其存儲(chǔ)的值的類型贾费。同時(shí),你也不能將常量與變量進(jìn)行互轉(zhuǎn)
*OK, 這些規(guī)則和OC基本一致- .-*
> 注意:
如果你需要使用與Swift保留關(guān)鍵字相同的名稱作為常量或者變量名檐盟,你可以使用反引號(hào)(`)將關(guān)鍵字包圍的方式將其作為名字使用褂萧。無論如何,你應(yīng)當(dāng)避免使用關(guān)鍵字作為常量或變量名葵萎,除非你別無選擇导犹。
######輸出常量和變量
print(_:separator:terminator:)是一個(gè)用來輸出一個(gè)或多個(gè)值到適當(dāng)輸出區(qū)的全局函數(shù)。如果你用 Xcode羡忘,print(_:separator:terminator:)將會(huì)輸出內(nèi)容到“console”面板上谎痢。separator和terminator參數(shù)具有默認(rèn)值,因此你調(diào)用這個(gè)函數(shù)的時(shí)候可以忽略它們卷雕。默認(rèn)情況下节猿,該函數(shù)通過添加換行符來結(jié)束當(dāng)前行。如果不想換行漫雕,可以傳遞一個(gè)空字符串給terminator參數(shù)--例如沐批,print(someValue, terminator:"")。關(guān)于參數(shù)默認(rèn)值的更多信息蝎亚,請(qǐng)參考默認(rèn)參數(shù)值九孩。
Swift 用字符串插值(string interpolation)的方式把常量名或者變量名當(dāng)做占位符加入到長(zhǎng)字符串中,Swift 會(huì)用當(dāng)前常量或變量的值替換這些占位符发框。將常量或變量名放入圓括號(hào)中躺彬,并在開括號(hào)前使用反斜杠將其轉(zhuǎn)義:
Var friendlyWelcome = "Bonjour"
print("The current value of friendlyWelcome is (friendlyWelcome)")
// 輸出 "The current value of friendlyWelcome is Bonjour!```
看起來比NSLog好用多了……返璞歸真print
注釋
// 這是一個(gè)注釋
/* 這是一個(gè),
多行注釋 */
/* 這是第一個(gè)多行注釋的開頭
/* 這是第二個(gè)被嵌套的多行注釋 */
這是第一個(gè)多行注釋的結(jié)尾 */```
*看吧,很簡(jiǎn)單吧梅惯,一看就會(huì)宪拥,都不需要多余的解釋(誰讓她跟OC一樣呢,哈哈)*
######分號(hào)
與其他大部分編程語(yǔ)言不同铣减,Swift 并不強(qiáng)制要求你在每條語(yǔ)句的結(jié)尾處使用分號(hào)(;)她君,當(dāng)然,你也可以按照你自己的習(xí)慣添加分號(hào)葫哗。有一種情況下必須要用分號(hào)缔刹,即你打算在同一行內(nèi)寫多條獨(dú)立的語(yǔ)句:
let cat = "??"; print(cat)
// 輸出 "??"```
懶癌晚期患者們的福音,省了多少代碼量劣针!自己算算校镐。。捺典。再也不用因?yàn)槭侄糖貌坏椒痔?hào)而煩惱啦鸟廓,解放雙手,解放荷爾蒙就這么任性-。-