注意:swift
概念:學習
可選類型的取值:url
空值code
有值對象
定義可選類型開發
// 錯誤寫法 // let string : String = nil // 正確寫法: // 寫法一:定義可選類型 let string : Optional<String> = nil // 寫法二:定義可選類型,語法糖(經常使用) let string : String? = nil
// 演練一: // 定義可選類型 var string : Optional<String> = nil // 給可選類型賦值 string = "Hello world" // 打印結果 print(string) // 結果:Optional("Hello world")\n // 由於打印出來的是可選類型,全部會帶Optional // 演練二: // 取出可選類型的真實值(解包) print(string!) // 結果:Hello world\n // 注意:若是可選類型爲nil,強制取出其中的值(解包),會出錯 string = nil print(string!) // 報錯 // 正確寫法: if string != nil { print(string!) } // 簡單寫法:爲了讓在if語句中能夠方便使用string if var str = string { print(str) }
真實應用場景string
// 經過該方法建立的URL,可能有值,也可能沒有值 // 錯誤寫法:若是返回值是nil時,就不能接收了 let url : NSURL = NSURL(string: "www.baidu.com") // 正確寫法:使用可選類型來接收 let url : NSURL? = NSURL(string: "www.baidu.com") // 經過url來建立request對象 if let tempUrl = url { let request = NSURLRequest(URL: tempUrl) }