閱讀899 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Swift學習之一:常量與變量

正在學習swift中,看了一遍英文文檔,現在是在看第二遍,順便總結出一些知識點,如果有哪裏說明值得質疑的地方,請留言/回複指出,謝謝!


常量與變量都會有一個關聯的名字(如maximumNumberOfLoginAttempts或者welcomeMessage),

有特定的類型(如數字10或者字符串"Hello")。常量的值一旦設置就不能再修改,而變量的值
在將來是可以修改為不同的值的。


聲明常量與變量

常量與變量在使用前必須先聲明。使用let關鍵字聲明常量,而變量是使用var關鍵字來聲明。

看下麵的例子:

// 分號加不加都行,如果看不習慣,可以自行添加
// 聲明了一個名叫maximumNumberOfLoginAttempts的常量,由於沒有指定類型,而又進行了初始化,其值為10,
// 所以swift會自動推斷出常量maximumNumberOfLoginAttempts的類型為Int
// 這個寫法相當於:let maximumNumberOfLoginAttempts: Int = 10
let maximumNumberOfLoginAttempts = 10
// 聲明的currentLoginAttempt是一個變量,在其他地方可以修改這個變量的值
// 這裏沒有顯示指定變量的類型,但因為有了初始值0,因此Swift會推斷出這個變量的類型為Int
// 因此下麵的寫法相當於:var currentLoginAttempt: Int = 10
var currentLoginAttempt = 10

可以在一行聲明多個變量,變量之間用逗號隔開
// swift在推斷浮點類型時,默認會使用Double類型,下麵相當於:
// var x: Double = 0.0, y: Double = 0.0, z: Double = 0.0
var x =


NOTE
如果在你的代碼中不希望某個儲存的值發生改變,那麼總是用let關鍵字聲明為常量。
使用變量隻用於值需要改變的。




類型說明(Type Annotation)

上麵的注釋中已經用到了類型說明,其實就是在聲明變量或者常量的同時顯示指定變量或者常量的類型

// 這樣寫法是錯誤的,因為我們沒有指定類型,而swift又沒有具體的初始值來判斷
// 我們希望這個變量的類型
var welcomeMessage //Error

那麼我們有兩種方式處理,一種是給定一個初始值讓swift幫助我們推斷出類型,另一種是我們顯示指定類型
var welcomeMessage: String // 我們想要的是String類型
var welcomeMessage = "Hello" // swift會根據這個初始值判斷出類型為String
NOTE
在實際的工作中,很少需要寫明類型說明。如果在定義變量或者常量的時候就提供了初始值,
那麼Swift總是會推斷出該變量或者常量的類型。


命名常量、變量

swift中可以使用Unicode字符
let n = 3.14159
let 你好 = "你好,Swift" // 雖然可以用中文作為變量名,但我不建議這麼做。。。個人建議


打印常量、變量

// 在swift中打印語句可以用println,print
// 前者是打印最後添加了一個換行,後者則沒有添加
println(welcomeMessage) // 會換行
print(welcomeMessage)   // 不會換行

// 注意到這裏打印的方式了嗎?使用\()把變量放到括號中
println("The welcomeMessage is \(welcomeMessage)")
		


最後更新:2017-04-03 08:26:28

  上一篇:go 手機衛士14-顯示來電歸屬地
  下一篇:go opengl微開發之1-從零開始