MENU

C# 初心者でもわかるswitch case構文ガイド[条件分岐]

C#プログラミングを学び始めたばかりの方にとって、条件分岐は避けて通れない重要なトピックです。特に、複数の条件に基づいて処理を分岐させたい場合、switch case構文は非常に便利なツールとなります。この記事では、C#におけるswitch case構文の基本から応用まで、初心者の方にも分かりやすく解説します。

目次

switch case構文とは?

switch case構文は、ある変数の値に応じて異なる処理を実行するための制御構造です。if-else文の連続使用と比べて、コードがより読みやすく、効率的になることが多いです。

基本的な構造は以下のようになります:

switch (変数)
{
    case 値1:
        // 値1の場合の処理
        break;
    case 値2:
        // 値2の場合の処理
        break;
    // 他のケース...
    default:
        // どのケースにも当てはまらない場合の処理
        break;
}

簡単な例で理解する

実際の例を見てみましょう。曜日に応じて異なるメッセージを表示するプログラムを作ってみます。

using System;

class Program
{
    static void Main()
    {
        Console.Write("曜日を入力してください(例:月):");
        string day = Console.ReadLine();

        switch (day)
        {
            case "月":
            case "火":
            case "水":
            case "木":
            case "金":
                Console.WriteLine("平日です。頑張って働きましょう!");
                break;
            case "土":
            case "日":
                Console.WriteLine("週末です。ゆっくり休みましょう!");
                break;
            default:
                Console.WriteLine("正しい曜日を入力してください。");
                break;
        }
    }
}

このプログラムでは:

  1. ユーザーに曜日を入力してもらいます。
  2. 入力された曜日に応じて、異なるメッセージを表示します。
  3. 平日(月〜金)と週末(土・日)で異なる処理を行います。
  4. 正しくない入力の場合は、defaultケースで対応します。

switch case構文の重要なポイント

  1. break文の使用: 各caseブロックの最後には必ずbreak文(またはreturn文)が必要です。これがないと、次のcaseの処理も続けて実行されてしまいます。
  2. defaultケース: どのcaseにも当てはまらない場合の処理を書きます。省略可能ですが、予期しない入力に対応するために書くことをおすすめします。
  3. 複数のcaseをまとめる: 上記の例のように、同じ処理を行う複数のcaseはまとめて書くことができます。

応用:switch式を使う(C# 8.0以降)

C# 8.0からは、より簡潔に書ける「switch式」が導入されました。先ほどの例を switch式で書き直すとこうなります:

string message = day switch
{
    "月" or "火" or "水" or "木" or "金" => "平日です。頑張って働きましょう!",
    "土" or "日" => "週末です。ゆっくり休みましょう!",
    _ => "正しい曜日を入力してください。"
};

Console.WriteLine(message);

この書き方では:

  • => の左側に条件、右側に返す値を書きます。
  • or を使って複数の条件をまとめられます。
  • _ はdefaultケースを表します。

まとめ

switch case構文は、複数の条件に基づいて処理を分岐させる強力なツールです。基本的な使い方は簡単ですが、使いこなすことで読みやすく効率的なコードを書くことができます。

初心者の方は、まずは単純な値の比較から始めて、徐々に複雑な条件分岐に挑戦してみてください。実際のプログラムで使ってみることで、理解がより深まるでしょう。switch case構文をマスターすれば、C#プログラミングの幅が大きく広がります!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次