Паттерн константы
Паттерн константы сравнивает выражение с литералом
или null. Его пишут как num is 5
или как метку case
case 5: в switch.
Результат - true или false при
использовании с is.
Синтаксис
значение is константа
case константа:
Пример
Давайте проверим, равно ли число 5
константе 5:
using System;
class Program
{
static void Main()
{
int num = 5;
bool res = num is 5;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте сравним строку с литералом
"abcde":
using System;
class Program
{
static void Main()
{
string str = "abcde";
if (str is "abcde")
{
Console.WriteLine("match");
}
}
}
Результат выполнения кода:
"match"
Пример
Давайте проверим ссылку на null
через паттерн:
using System;
class Program
{
static void Main()
{
string? str = null;
bool res = str is null;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте выбрать ветку в switch
по константе 2:
using System;
class Program
{
static void Main()
{
int num = 2;
switch (num)
{
case 1:
Console.WriteLine("one");
break;
case 2:
Console.WriteLine("two");
break;
default:
Console.WriteLine("other");
break;
}
}
}
Результат выполнения кода:
"two"
Смотрите также
-
паттерн
сравнения,
который сравнивает число с порогом -
логический паттерн
и, или, не,
который комбинирует другие шаблоны -
условие
when,
которое дополняетcaseпроверкой -
паттерн
типа,
который проверяет тип и связывает имя