#5 Swiftで学ぶ条件分岐の基本

Swiftの条件分岐は、基本的な書き方に加えて、オプショナル型と組み合わせた独自の書き方が特徴です。この記事では、Swiftにおける条件分岐の基本と、安全な値の取り出し方を解説します。

if文の基本

let age = 20
if age >= 18 {
    print("成人です")
} else {
    print("未成年です")
}

Goと同様、条件をかっこで囲む必要がありません。

if letという独自の書き方

Swiftには、値が入っているかもしれない(オプショナル型の)変数を安全に扱うためのif letという書き方があります。

if let name = nickname {
    print("こんにちは、\(name)さん")
} else {
    print("ニックネームが設定されていません")
}

「nicknameに値が入っていれば、それをnameという名前で取り出して処理を続ける」という意味を持つ、Swiftならではの書き方です。

guard文で早期リターンする

条件を満たさない場合にすぐ処理を打ち切りたいときは、guardという書き方も便利です。

func greet(_ nickname: String?) {
    guard let name = nickname else {
        print("ニックネームが設定されていません")
        return
    }
    print("こんにちは、\(name)さん")
}

if letと違い、guardは条件を満たさない場合に必ず処理を抜ける前提で書くため、正常系の処理をネストさせずにまっすぐ書ける利点があります。

switch文の柔軟さ

Swiftのswitch文は、範囲指定や複数条件のグループ化にも対応しており、他の言語のswitchより柔軟に書けます。

switch score {
case 90...100:
    print("優")
case 70..<90:
    print("良")
default:
    print("可")
}

複数のオプショナルをまとめて確認する

if letはカンマで区切ることで、複数のオプショナル値を一度に確認できます。

if let name = nickname, let age = userAge {
    print("\(name)さんは\(age)歳です")
}

どちらか一方でも値が無ければ、ifブロックの中身は実行されません。

Swiftならではの注意点

if letという書き方は、最初は独特に感じるかもしれません。しかし「値が存在することを確認してから、安全に使う」という考え方は、Swiftの安全性を支える重要な仕組みです。オプショナル型を学ぶ際は、必ずセットで覚えておきましょう。

まとめ

Swiftの条件分岐は基本的なif・elseに加え、if let・guardによるオプショナル型の安全な取り出しが特徴です。この書き方に慣れることが、Swiftらしいコードへの近道です。


本ページはプロモーションを含みます。

参考書籍(PR)

Swiftをもっと学びたい方には「これからつくる iPhoneアプリ開発入門」がおすすめです。


PR

コードを書かずに自動化したい方へ

「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。

コメント

このブログの人気の投稿

#25 Rustで学ぶAI API(ChatGPT等)の呼び出し方の基本

#8 C++で学ぶ文字列操作の基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本