カテゴリ: 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のアーキテクチャの進化をわかりやすく解説!MVIとCompose連携を初心者向けに理解する
New2
Swift
Swiftのnilとは?Optionalとの関係や初期化について初心者向けにやさしく解説!
New3
Swift
Swift文字列操作総まとめ|性能・安全性・多言語対応の指針
New4
Go言語
Go言語の配列の基本!定義・初期化・アクセス方法をやさしく解説
人気記事
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
Kotlin
Kotlinのメモリプロファイリングツールの使い方を完全解説!初心者でも理解できるメモリ使用量の調べ方
No.5
Java&Spring記事人気No5
Swift
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.6
Java&Spring記事人気No6
Swift
Swift Xcode ArchiveとApp Store Connectへのアップロード完全ガイド!初心者でもわかる公開手順
No.7
Java&Spring記事人気No7
Swift
Swift入門ガイド|基本構文と書き方をマスターしよう
No.8
Java&Spring記事人気No8
Kotlin
KotlinでAndroidアプリ開発を始める!基本環境構築からHello Worldまで