Swiftでguardを使う方法(nil, アンラップ) [Swift2.2]

Pocket

guardはSwift2.0から取り入れられた、比較的新しいものです。

必須条件を書いて、一般的にはそれが成立しない場合にreturnなどで関数から抜けたりします。

Swiftでguardを使う

10以上だった場合にprintする関数で、最初にguard文で10未満のものを除外している。

いわゆる、早期リターンという方法でよく使われる。

guard文の良いところ

例えば、if文で以下のように書くことももちろんできる

結果的には同じ。

例えば、それぞれにreturnがあるが、これをコメントアウトするとguard文ではエラーになる

早期リターンでreturnを書き忘れるのは良くあることで、それの予防にもguardは有効

他には

  • break
  • continue
  • throw

なんかも使えるので、うまく使ってみよう。

guardでnilチェック, アンラップをする

こんな感じで書いてあげれば、numをアンラップしてくれたり、nilだった場合に処理を中断させたりできるよ。

こちらもif文で書けるけど、guardの方が何をしてるか一目瞭然なので積極的に使っていこう。


おわりに

最近、Q&Aの teratail が割と便利なのでおすすめ。

ボクがリリースしたアプリも役に立ったらDLしてみてね -> iOSアプリ
スポンサーリンク
  • このエントリーをはてなブックマークに追加