C# switch文のサンプル

C#のswitch文のサンプルです。

目次

switch文

switch(条件)
{
  case 値 :
    処理
    break;
  case 値 :
    処理
    break;
   ・・・
  default:
    処理
    break;
}
  • 条件の値とcaseの値が一致すれば、配下の処理が実行されます。
  • breakでswitch文を抜けます。breakがないと下の判定(case/default)に行ってしまいます。
  • defaultは、条件の値がどのcaseの値にも一致しない時に実行されます。省略可能ですが書いたほうが良いです。
  • 以下は、Microsoftのswitch(C# リファレンス)のリンクです。
    https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/switch

switch文で数値を判定する

switch文で数値を判定するサンプルです。
13行目のcase 1と一致するのでその配下の処理が実行され、breakでswitch文を抜けます。
1が出力されます。

using System;
class Test1
{
    static void Main()
    {
        int num = 1;

        switch (num)
        {
            case 0:
                Console.WriteLine("0");
                break;
            case 1:
                Console.WriteLine("1"); // 出力される
                break;
            default:
                Console.WriteLine("その他");
                break;
        }
    }
}

switch文で文字列を判定する

switch文で文字列も判定できます。
13行目のcase "黄"と一致するのでその配下の処理が実行され、breakでswitch文を抜けます。
yellowが出力されます。

using System;
class Test1
{
    static void Main()
    {
        string color1 = "黄";

        switch (color1)
        {
            case "赤":
                Console.WriteLine("red");
                break;
            case "黄":
                Console.WriteLine("yellow"); // 出力される
                break;
            default:
                Console.WriteLine("blue");
                break;
        }
    }
}

switch文の中でif文を使用する

switch文の中でif文を使用するサンプルです。
14-21行目はcaseの後にif文を使用しています。

using System;
class Test1
{
    static void Main()
    {
        int num = 1;

        switch (num)
        {
            case 0:
                Console.WriteLine("0");
                break;
            case 1:
                if (num % 2 == 0)
                {
                    Console.WriteLine("偶数です");
                }
                else
                {
                    Console.WriteLine("奇数です"); // 出力される
                }
                break;
            default:
                Console.WriteLine("その他");
                break;
        }
    }
}

関連の記事

C# if文のサンプル
C# while文とdo while文のサンプル
C# for文とbreakとcontinueのサンプル
C# クラスとコンストラクタのサンプル

△上に戻る