- 単純な値の比較: 新しいswitch構文では、従来のように単純な値の比較に使用することができます。以下はその例です。
int number = 1;
switch (number)
{
case 1:
Console.WriteLine("One");
break;
case 2:
Console.WriteLine("Two");
break;
default:
Console.WriteLine("Other");
break;
}
- パターンマッチング: 新しいswitch構文では、パターンマッチングを使用して複雑な条件を扱うことができます。以下はその例です。
object obj = "Hello";
switch (obj)
{
case string s:
Console.WriteLine($"The string is: {s}");
break;
case int i when i > 0:
Console.WriteLine($"The positive integer is: {i}");
break;
default:
Console.WriteLine("Unknown type");
break;
}
- 複数の条件の組み合わせ: 新しいswitch構文では、複数の条件の組み合わせを扱うことができます。以下はその例です。
int number = 10;
switch (number)
{
case > 0 and < 5:
Console.WriteLine("Between 0 and 5");
break;
case > 5 and < 10:
Console.WriteLine("Between 5 and 10");
break;
default:
Console.WriteLine("Other");
break;
}
- タイプパターン: 新しいswitch構文では、タイプパターンを使用してオブジェクトの型を比較することができます。以下はその例です。
object obj = new List<int> { 1, 2, 3 };
switch (obj)
{
case List<int> list:
Console.WriteLine("List of integers");
break;
case List<string> list:
Console.WriteLine("List of strings");
break;
default:
Console.WriteLine("Unknown type");
break;
}
新しいswitch構文を使用することで、より簡潔で読みやすいコードを書くことができます。上記の例は一部ですが、その他にもさまざまなケースで使用することができます。新しいswitch構文の機能を活用して、より効率的なコーディングを行いましょう。