1. 程式人生 > >Swift基礎1.2——基本語法—Optional 可選項

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 開發時,??
     能夠簡化程式碼的編寫