switchで複数の分岐を整理する
1つの値によって処理を複数に分けるとき、switch が役立ちます。
int command = 2;
switch (command)
{
case 1:
Console.WriteLine("Start");
break;
case 2:
Console.WriteLine("Pause");
break;
case 3:
Console.WriteLine("Stop");
break;
default:
Console.WriteLine("Unknown");
break;
}
各 case の処理を終えたら、通常は break でswitch文を抜けます。default はどのcaseにも一致しない場合の処理です。
switch式
値を選んで変数に代入したいときは、switch式を使うと簡潔に書けます。
int day = 1;
string name = day switch
{
1 => "Monday",
2 => "Tuesday",
3 => "Wednesday",
4 => "Thursday",
5 => "Friday",
6 => "Saturday",
7 => "Sunday",
_ => "Invalid"
};
Console.WriteLine(name);
switch式の _ は、それまでのどのパターンにも一致しなかった場合を表します。