Swift基礎1.2——基本語法—Optional 可選項

本打算用一篇完整把Swift的基礎語法寫完,但看了一下以前整理的內容,看來是不可能了。

  • Optional 是 Swift 的一大特色
  • 定義變量時,如果指定是可選的,表示該變量可以有一個指定類型的值,也可以是 nil
  • 定義變量時,在類型後面添加一個 ?,表示該變量是可選的
  • 變量可選項的默認值是 nil
  • 常量可選項沒有默認值,主要用於在構造函數中給常量設置初始數值

// Optional 可能有兩個值 (None / Some)
// 格式(1. 自動推導):var 變量名: Optional = 值
let x: Optional = 20
// 格式(2. 指定類型):var 變量
let y: Optional<Int> = 30
// 格式(3. 簡化格式):var 變量名: 類型? = 值
let z: Int? = 10

// 可選值在參與計算前,必須`解包 unwarping`
// 只有`解包(unwrap)`後才能參與計算
// 在變量後添加一個 `!`,可以強行解包
// `?` 是用於定義的
// `!` 是用於解包的
print(x! + y! + z!)
  • 如果 Optional 值是 nil,不允許參與計算
  • 只有解包(unwrap)後才能參與計算
  • 在變量後添加一個 !,可以強行解包

?? 運算符

  • ?? 運算符可以用於判斷 變量/常量 的數值是否是 nil,如果是則使用後面的值替代
  • 在使用 Swift 開發時,?? 能夠簡化代碼的編寫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章