可選項(xiàng) Optional

可選項(xiàng) Optional

  • 可選項(xiàng)可能有兩個(gè)值:none、some

  • 定義常量、變量時(shí),如果指定是可選的,表示該變量、常量可以有一個(gè)指定類型的值,也可以是nil

  • 定義常量、變量時(shí),在類型后面加上一個(gè)?,表示變量是可選的

  • 變量可選項(xiàng)的默認(rèn)值是nil

  • 常量可選項(xiàng)沒有默認(rèn)值

  • 定義可選項(xiàng)的方式:

// 原始的可選項(xiàng)定義
let x: Optional = 10
let y: Optional<Int> = 30
// 簡單定義
// ?用來定義 z,是一個(gè)可選的Int類型,可能沒有值,也可能有一個(gè)整數(shù)值
let z: Int? = 40

// 可選值在參與計(jì)算之前,必須解包
// 在變量后面加個(gè) ! 可以強(qiáng)行解包
// 強(qiáng)行解包:從可選值中強(qiáng)行獲取對(duì)應(yīng)的非空值,如果真的是 nil, 就會(huì)崩潰
// 最常見錯(cuò)誤:Unexpectedly found nil while unwrapping an Optional value,在解包的時(shí)候發(fā)現(xiàn)了nil值
print(z!)   //Optional(30)
print(x!)   // 10
print(y!)   // 40
print(x! + y!)  // 50
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容