C#プログラミング入門!初心者向け その10 条件分岐 ②switchステートメント

ビジュアルスタジオC#
Visualstudio
みつる君
みつる君

今回は、初心者向けに条件分岐の一種であるswitchステートメントについて説明します。switchステートメントとは、ある変数の値に応じて、複数の処理を分岐させることができる構文です。if文と似ていますが、switchステートメントの方が、値が多くなった場合に見やすく書けるというメリットがあります。では、具体的な例を見てみましょう。

switchステートメント

基本的な構文

みつる君
みつる君

switchステートメントは、指定した式を評価し、その値に応じて実行するコードブロックを選択します。以下は、基本的な構文です。

構文

switch(変数)
{
 case 値A:
  // 変数の値 == 値A のとき実行される
 break;
 case 値B:
  // 変数の値 == 値B のとき実行される
 break;
  ・
  ・
  ・
 default:
  // caseで指定された以外の値のとき実行される
 break;
}

この構文では、式の評価結果に応じて、該当するcaseラベルの処理が実行されます。一致するケースがない場合、defaultラベルの処理が実行されます。

コードの例

マリさん
マリさん

では、実際に例を作成してみましょう。

みつる君
みつる君

下記のコードでは、「int d=6;」なので、dに6が格納され、switch(変数)の変数は6になります。そのため、

Console.WriteLine(“金曜日”);

が、実行されます。

using System;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int d = 6;
            switch (d)
            {
                case 1:
                    Console.WriteLine("日曜日");
                    break;
                case 2:
                    Console.WriteLine("月曜日");
                    break;
                case 3:
                    Console.WriteLine("火曜日");
                    break;
                case 4:
                    Console.WriteLine("水曜日");
                    break;
                case 5:
                    Console.WriteLine("木曜日");
                    break;
                case 6:
                    Console.WriteLine("金曜日");
                    break;
                case 7:
                    Console.WriteLine("土曜日");
                    break;
            }
        }
    }
}

みつる君
みつる君

実行結果は

金曜日

みつる君
みつる君

このプログラムでは、変数dの値に応じて該当する曜日がコンソールに表示されます。

みつる君
みつる君

では、これを、if else文でコードを書きなおした場合、どうなるでしょう。

尚、if else文は下記を参考にしてください。

using System;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int d = 6;
            if (d == 1)
            {
                Console.WriteLine("日曜日");
            }
            else if (d == 2)
            {
                Console.WriteLine("月曜日");
            }
            else if (d == 3)
            {
                Console.WriteLine("火曜日");
            }
            else if (d == 4)
            {
                Console.WriteLine("水曜日");
            }
            else if (d == 5)
            {
                Console.WriteLine("木曜日");
            }
            else if (d == 6)
            {
                Console.WriteLine("金曜日");
            }
            else if (d == 7)
            {
                Console.WriteLine("土曜日");
            }
        }
    }
}

みつる君
みつる君

実行結果は

金曜日

みつる君
みつる君

同じですね!

侍エンジニアPlus
タイトルとURLをコピーしました