【Swift】guard文の使い方

swiftのguard文の使い方を解説します。

スポンサーリンク

環境

この記事の情報は次のバージョンで動作確認しています。

【Swift】4.1.2
スポンサーリンク

guard文の概要

guard文は想定外の状況が発生した場合に、その処理から抜け出すための構文です。

次のように記述します。

if文でも同様の処理が書けますが、guard文はスコープから抜ける処理を書かないとエラーになるので、guardが出てくると「必ず処理を抜けるんだな」と分かり、可読性があがります。

オプショナル変数のアンラップ処理に使う

guard文はオプショナル変数のアンラップ処理に使うと大変便利です。

if文を使ったアンラップ処理は、通常次のようになります。

guard文を使うと次のように書けます。

if文と違って、guard文で宣言した変数や定数がguard文を終了した後の文で利用可能なのが特徴です。

スコープを抜ける処理

guard文のスコープを抜ける処理としては、次のようなものが使えます。

return        処理を終了し、呼び出し元に戻る
break        繰り返し処理を終了する
continue   処理をスキップする
throw        例外を投げる
abort()      プログラムを終了する

guardの複数条件

次にように複数条件の記述も可能です。

この場合、いずれかの条件が満たされない場合に処理を抜けます。 

スポンサーリンク

最後に

guard文を適切に使うと、例外的な状況への対応と、そこからの脱出をコンパクトに記述できるので、ソースが読みやすくなりますね。

スポンサーリンク

あわせて読みたい記事

【Swift】if let とは?
Swiftのコードでよく見かける if let 構文について解説します。