使用let
來聲明常量,使用var
來聲明變量。一個常量的值,在編譯的時候,並不須要有明確的值,可是你只能爲它賦值一次。也就是說你能夠用常量來表示這樣一個值:你只須要決定一次,可是須要使用不少次。javascript
var myVariable = 42 myVariable = 50 let myConstant = 42
常量或者變量的類型必須和你賦給它們的值同樣。然而,你不用明確地聲明類型,聲明的同時賦值的話,編譯器會自動推斷類型。在上面的例子中,編譯器推斷出myVariable
是一個整數(integer)由於它的初始值是整數。java
若是初始值沒有提供足夠的信息(或者沒有初始值),那你須要在變量後面聲明類型,用冒號分割。swift
let implicitInteger = 70 let implicitDouble = 70.0 let explicitDouble: Double = 70
練習: 建立一個常量,顯式指定類型爲
Float
並指定初始值爲4。數組
值永遠不會被隱式轉換爲其餘類型。若是你須要把一個值轉換成其餘類型,請顯式轉換。markdown
let label = "The width is" let width = 94 let widthLabel = label + String(width)
練習: 刪除最後一行中的
String
,錯誤提示是什麼?app
有一種更簡單的把值轉換成字符串的方法:把值寫到括號中,而且在括號以前寫一個反斜槓。例如:函數
let apples = 3 let oranges = 5 let appleSummary = "I have \(apples) apples." let fruitSummary = "I have \(apples + oranges) pieces of fruit."
練習: 使用
\()
來把一個浮點計算轉換成字符串,並加上某人的名字,和他打個招呼。ui
使用方括號[]
來建立數組和字典,並使用下標或者鍵(key)來訪問元素。最後一個元素後面容許有個逗號。url
var shoppingList = ["catfish", "water", "tulips", "blue paint"] shoppingList[1] = "bottle of water" var occupations = [ "Malcolm": "Captain", "Kaylee": "Mechanic", ] occupations["Jayne"] = "Public Relations"
要建立一個空數組或者字典,使用初始化語法。spa
let emptyArray = [String]() let emptyDictionary = [String: Float]()
若是類型信息能夠被推斷出來,你能夠用[]
和[:]
來建立空數組和空字典——就像你聲明變量或者給函數傳參數的時候同樣。
shoppingList = [] occupations = [:]