[Swift入門] guard letの使い方

本記事ではSwiftのgurad let文の使い方を簡単に紹介していきます。

環境: Swift4.2

guard letでできること

まずSwiftのguard letとは何かまとめます。

guard letはオプショナル型(optional)を安全に取り出したい時に使います。

Swiftではオプショナル型からnilを取り出してしまったらエラーが起きてアプリが落ちます。

なので、オプショナル型から値を取り出す時に、

nilじゃなければ取り出すというとをやりたい時にguard letは使えます。

optional型やnilについては、以下の記事にまとめているので参考にしてください。


guard letの書き方

まずguard let文の公式から紹介します。

具体的な使い方はこんな感じです。

①… オプショナル型変数testNumに100を入れる

②…guard let文で定数numを作る。もし変数testNumがnilならelse節に入ってreturnで処理を終える。nilでなければ、print(num)を実行する。

③…testメソッドを実行。guard let文でチェックし、numは100でnilでないので、print(num)が実行され、100と結果が出力されます。

guard letでチェックしてnilだった場合の例も確認しましょう。

①…変数testNumにnilを代入しています。

②…変数testNumがnilなので、gurad let文はelse節に入り、print(“nilです”)が実行されます。

guard letはif let文と似ている

if let文でもguard let文と同じように、オプショナル型を安全に取り出すことができます。

違いは、

If let … もしnilでなければ、何か処理をする時
guard let … もしnilだったら処理をする

といった感じです。

使い方を見てみましょう。

①‥変数testにnilを代入

②‥もしtestがnilでなければ、if let文で定数testNumを作る。

③変数testがnilなので、”nilです”と出力される

if letの使い方でも記事を書いているので参考にしてみてください。

まとめ

・Swiftのguard let文は、オプショナル型を安全に取り出すことができる。

・if let文でも似たような処理を行うことができる。

以上で、Swiftのguard letの使い方を終わります。

未経験からエンジニアなりませんか?:社会人転職コース

参考:

Optional – Swift Standard Library | Apple Developer Documentation

Swift の guard は正しく使いましょう

guard letとif letの使い分け