
みつる君
今回は、初心者向けに条件分岐の一種である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("土曜日");
}
}
}
}

みつる君
実行結果は
金曜日

みつる君
同じですね!




