カテゴリ: Swift 更新日: 2026/02/17

Swiftのif caseとguard caseを完全解説!初心者でもわかる条件分岐の使い方

Swift if case・guard case の使い方
Swift if case・guard case の使い方

先生と生徒の会話形式で理解しよう

生徒

「Swiftで特定のパターンだけを条件分岐したいときってどうすればいいんですか?」

先生

「その場合は、if caseguard caseを使うと便利ですよ!」

生徒

「普通のif文やswitch文じゃだめなんですか?」

先生

「もちろん使えますが、if caseguard caseを使うと、より簡潔に書けるんです。それでは基本から見ていきましょう!」

1. Swiftのif caseとは?

1. Swiftのif caseとは?
1. Swiftのif caseとは?

Swiftのif caseは、「特定のパターンにマッチするかどうか」を条件にできる構文です。switch文のように複数のケースを分けるのではなく、「このパターンだけを処理したい!」というときに便利です。

たとえば、列挙型(enum)の中である特定の値だけを判定したい場合に使えます。

2. if caseの基本的な使い方

2. if caseの基本的な使い方
2. if caseの基本的な使い方

次のようなenumがあったとします。


enum 天気 {
    case 晴れ
    case 曇り
    case 雨
}

この天気のときだけ、傘を持っていく処理をしたいとしましょう。その場合、if caseを使ってこう書けます。


let 今日の天気 = 天気.雨

if case .雨 = 今日の天気 {
    print("傘を持っていきましょう!")
}

このように、if case .雨 = 今日の天気という書き方で、「今日の天気が雨だったら」という条件が書けるのです。

3. if caseと値の取り出し

3. if caseと値の取り出し
3. if caseと値の取り出し

列挙型に関連値(変数を持つケース)がある場合は、その中の値を取り出すこともできます。


enum メッセージ {
    case テキスト(String)
    case 画像(URL)
}

このメッセージがテキストのときだけ、その文字列を取り出して使うには、次のように書きます。


let 受信メッセージ = メッセージ.テキスト("こんにちは!")

if case let .テキスト(内容) = 受信メッセージ {
    print("テキスト内容: \(内容)")
}

case letを使うことで、関連するデータ(この場合は内容)を簡単に取り出すことができます。

4. guard caseとは?

4. guard caseとは?
4. guard caseとは?

guard caseif caseと似ていますが、早めに関数から抜けたいときに使います。「この条件じゃなければ早く抜ける」という処理に向いています。

たとえば、関数の最初で条件チェックをして、合わなければすぐreturnしたいときなどです。

5. guard caseの使い方

5. guard caseの使い方
5. guard caseの使い方

先ほどと同じメッセージの例で、関数の中で処理する場合を考えてみましょう。


func メッセージを表示する(_ メッセージ: メッセージ) {
    guard case let .テキスト(内容) = メッセージ else {
        print("テキストメッセージではありません")
        return
    }

    print("受信したテキスト: \(内容)")
}

guard caseを使うと、条件に合わなかった場合にelseの中で処理をして、早めに抜けることができます。条件に合えばその後のコードが実行されます。

6. if caseとguard caseはいつ使う?

6. if caseとguard caseはいつ使う?
6. if caseとguard caseはいつ使う?

ここまでの説明をふまえて、それぞれの使い分けの目安は以下の通りです。

  • if case: 条件に合ったときだけ処理をしたい場合に使う
  • guard case: 条件に合わなければ処理を中断したいときに使う

特にguard caseは、関数の早期リターンに使うとコードがすっきりします。

7. 実際の例:ログインチェック

7. 実際の例:ログインチェック
7. 実際の例:ログインチェック

次に、より現実的な例としてログイン状態のチェックを考えてみましょう。


enum ログイン状態 {
    case 未ログイン
    case ログイン中(ユーザー名: String)
}

func ダッシュボードに進む(_ 状態: ログイン状態) {
    guard case let .ログイン中(ユーザー名) = 状態 else {
        print("ログインが必要です")
        return
    }

    print("\(ユーザー名) さん、ようこそ!")
}

このようにguard caseを使うことで、ログインしていない場合は早めに関数を抜けることができます。初心者の方でも、読みやすく理解しやすいコードになります。

Swiftを基礎から実践レベルまで学びたい人や、 iOSアプリ開発を本格的に始めたい人には、 定番の入門+実践書がこちらです。

Swift実践入門をAmazonで見る

※ Amazon広告リンク

8. Swiftのif caseとguard caseでコードをシンプルに!

8. Swiftのif caseとguard caseでコードをシンプルに!
8. Swiftのif caseとguard caseでコードをシンプルに!

Swiftのif caseguard caseは、特定の条件にマッチした場合だけ処理をしたいときにとても便利な書き方です。

特にguard caseは、条件に合わない場合に早く抜けるという設計ができるため、初心者の方でも無理なく読みやすいコードが書けます。

複雑に見えるかもしれませんが、実はswitch文の一部を簡略化したようなものです。パターンマッチングを使って、Swiftらしいシンプルで安全なコードを目指しましょう!

関連セミナーのご案内

Windowsで始めるiPhoneアプリ開発入門|Swiftの基本と仕組みを1時間で攻略

Windowsで始めるiPhoneアプリ開発入門|Swiftの基本と仕組みを1時間で攻略

「iPhoneアプリを作りたいけれど、Macを持っていないから諦めている」そんな方のための画期的な入門講座です。実は、プログラミングの本質を学ぶのに高価な機材は必要ありません。本講座では、Windowsパソコンを使用し、クラウド環境を活用してAppleの最新言語Swift(スウィフト)の基礎を最短距離でマスターします。

Windowsで実現する開発環境

【つくるもの】
ブラウザ上で動作する「スマート・計算ツール」や「データ判定プログラム」をゼロから作成します。変数の扱いや条件分岐など、iPhoneアプリの内部で動くロジックを自分の手で構築する感動を体験してください。

【開発環境】
ブラウザだけでSwiftが動くプロ仕様のオンラインエディタ(Replit等)を使用します。面倒な設定は一切不要。今あるWindows PCで、プロのエンジニアと同じコードを書き始められます。

この60分で得られる3つの理解

1. WindowsでのSwift実行環境の作り方

OSの壁を越え、クラウドを活用してスマートに学習を開始する「現代的な開発スタイル」を習得します。

2. Swiftの基本構造(変数・型・定数)

iPhoneアプリ特有のデータの扱い方や、Appleが推奨する「安全で美しいコード」の書き方を学びます。

3. アプリエンジニアとしてのロードマップ

将来的にiOSエンジニアとして副業・転職するために必要な準備や、Mac選びのポイントを伝授します。

※本講座は、将来的にiPhoneアプリ開発で収益化や転職を目指したい未経験者のためのエントリー講座です。マンツーマン形式により、Windows環境ならではの疑問にもその場でお答えし、あなたの理解度に合わせて進行します。

セミナー画像

Windowsで始めるiPhoneアプリ開発入門

カテゴリの一覧へ
新着記事
New1
Kotlin
Kotlinでリストやマップを簡単にループ処理する方法!初心者でもわかる繰り返しの基本
New2
Go言語
Go言語のSQLインジェクション対策!安全なDB操作例とセキュアなデータベース処理を初心者向けに解説
New3
Go言語
Go言語の構造体リテラルの書き方と便利な使い方
New4
Swift
Swiftの配列(Array)入門|初期化・追加・削除・検索の基本をやさしく解説!
人気記事
No.1
Java&Spring記事人気No1
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.2
Java&Spring記事人気No2
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.3
Java&Spring記事人気No3
Kotlin
Gradleファイル(build.gradle.kts)の書き方と役割をやさしく解説!Kotlin初心者向け完全ガイド
No.4
Java&Spring記事人気No4
Swift
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.5
Java&Spring記事人気No5
Kotlin
Kotlinで画面を作る!レイアウトXMLとビューの基本操作をやさしく解説
No.6
Java&Spring記事人気No6
Kotlin
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!
No.7
Java&Spring記事人気No7
Go言語
Go言語の構造体タグ(jsonタグなど)の使い方と活用例を初心者向けにやさしく解説
No.8
Java&Spring記事人気No8
Kotlin
KotlinのAPI通信でPOSTリクエストを送る方法!初心者向け徹底ガイド