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