論理パターンによる判定(C#9以降)

C# 9.0 以降、notand、および or パターン連結子を使用して、次の論理パターンを作成します。

パターンマッチング

C#9以降で使えるコード

英単語を条件式に使えるようになり、より直感的になったと思った方もいるのでは・・

int a = 3;
// int a = 4;
// int a = 5;
//int a = 9;

if (a is 3)
{
    Console.WriteLine("aは3です");
}

if (a is not 3)
{
    Console.WriteLine("aは3ではない");
}

if (a is 3 or 5)
{
    Console.WriteLine("aは3か5です");
}

if (a is > 3 and < 10)
{
    Console.WriteLine("aは3より大きく10より小さい");
}

以前のコード(今でももちろん使えます)

int a = 3;
// int a = 4;
// int a = 5;
// int a = 9;

if (a == 3)
{
    Console.WriteLine("aは3です");
}

if (a != 3)
{
    Console.WriteLine("aは3ではない");
}

if (a == 3 || a == 5)
{
    Console.WriteLine("aは3か5です");
}

if (3 < a && a < 10)
{
    Console.WriteLine("aは3より大きく10より小さい");
}

C#

Posted by hidepon