guard letの利点
- 早期リターン(さっさと処理を抜けたい時に使える)
使い方
サンプルコード1
定数(変数)のnilチェック
let value = nil
guard let value = value else {
// nilの場合はreturn
return
}
サンプルコード2
定数(変数)のnilチェック(複数版)
let value1 = nil
let value2 = nil
guard let value1 = value1,
let value2 = value2 else {
// value1がnilの場合、value2の判定をせずにreturn
return
}
サンプルコード3
定数(変数)の値の比較
let value1 = nil
let value2 = nil
guard value1 == value2 else {
// value1とvalue2が同じでなければreturn
return
}
サンプルコード4
guardの中で型変換
let value = "2022"
guard let number = Int(value) else {
// intに変換できない時return
return
}
サンプルコード5
guardの中で値を生成
guard let url = URL(string: "https://sogablog.net") else {
// urlの生成が失敗(urlで無かった場合)return
return
}
おまけ
Swift 5.7(Xcode 14)から以下の書き方ができる
let value = nil
guard let value else {
return
}