1 常量和變量
常量的值一旦設定就不能改變紫皇,通過let來聲明常量,如:
let age = 0
通過var來聲明變量殉簸,如:
var name = "swift"
2 類型標注
在聲明常量或者變量的時候可以加上類型標注(type annotation)蝶怔,說明常量或者變量重要存儲的值的類型勃教。
let age: Int = 0
var name: String = "swift"
3 常量和變量的命名
swift可以讓你使用任何你喜歡的字符作為常量和變量名,包括Unicode字符:
let π: Double = 3.14159
let 你好: String = "hello"
注:常量與變量名不能包含數(shù)學符號脐嫂,箭頭统刮,保留的(或者非法的)Unicode 碼位,連線與制表符雹锣。也不能以數(shù)字開頭网沾,但是可以在常量與變量名的其他地方包含數(shù)字。
4 類型安全和類型推斷
swift是一個類型安全(typ safe)的語言蕊爵。類型安全的語言可以讓你清楚地知道代碼要處理的值的類型辉哥。如果你的代碼需要一個String,你絕對不可能不小心傳進去一個Int攒射。
5 數(shù)值型字面量
整數(shù)字面量:
十進制數(shù)醋旦,沒有前綴 let decimalInteger = 16
二進制數(shù),前綴0b let binaryInteger = 0b10000
八進制數(shù)会放, 前綴0o let OctalInteger = 0o20
十六進制數(shù)饲齐,前綴0x let hexadecimalInteger = 0x10
6 類型轉(zhuǎn)換
整型與整型轉(zhuǎn)換
let ageUInt: UInt = 8
let ageInt: Int = Int(ageUInt)
整數(shù)與浮點數(shù)的轉(zhuǎn)換
let weightInt: Int = 65
let weightDouble: Double = Double(weightInt)
7 類型轉(zhuǎn)換
類型別名 (type aliases)就是給現(xiàn)有類型定義另一個名字。
typealias Integer8 = Int8
let height: Integer8 = 100
8 類型轉(zhuǎn)換
siwft布爾類型(Boolean)咧最,叫做Bool捂人。布爾值指的的邏輯上的值,只存在真假
let IamYourFather = true
let IamYourMother = true
9 元組(tuples)
把多個值組合成一個值矢沿。元組內(nèi)的只可以是任何類型
let http404Error: (Int, String) = (404, "Not Found")
// 通過下標來訪問元祖中的單個元素
print("StatusCode: \(http404Error.0)")
// 定義元組的時候給元組的單個元素命名滥搭,如果只需要一部分元組值,可以使用_代替
let http200 = (statusCode: 200, statusMessage: "OK")
print("statusCode: \(http200.statusCode) statusMessage: \(http200.statusMessage)")
let http500: (statusCode: Int, _: String) = (500, "內(nèi)部服務器錯誤")
9 可選類型(optionals)
可選類型用來處理值可能缺失的情況捣鲸。
有值瑟匆,等于某個特定的值
沒有值
10 可選綁定
使用可選綁定(optional binding)來判斷可選類型是否包含之,如果包含值就把值賦給一個變量或者常量栽惶〕盍铮可選綁定可以用在 if 和 while 語句中疾嗅。
let string: String = "12"
if let integerValur = Int(string) {
print("有值")
}
11 使用斷言進行調(diào)試
斷言會在運行時判斷一個邏輯條件是否為 true ,如果為 true 程序會繼續(xù)執(zhí)行冕象,如果為 false代承,代碼執(zhí)行結束,應用將被終止交惯。
let age = -1
assert(age > 0, "Age must bigger than zero")