Использование конструкции when в C#

Здравствуйте! В сегодняшней статье мы рассмотрим, как использовать конструкцию when в C# для условного фильтра в различных контекстах.
Шаг 1: Использование when в конструкции catch
Конструкция when позволяет добавлять условия к блокам catch, что делает обработку исключений более гибкой.
- Откройте ваш проект в Visual Studio.
- Добавим следующий код:
try
{
// Код, который может выбросить исключение
}
catch (Exception ex) when (ex.Message.Contains("specific error"))
{
// Обработка исключения только если сообщение содержит "specific error"
Console.WriteLine("Специфическая ошибка обработана.");
}
catch (Exception ex)
{
// Обработка всех остальных исключений
Console.WriteLine("Произошла ошибка: " + ex.Message);
}
Шаг 2: Использование when в конструкции case
Конструкция when также может быть использована в операторе switch для добавления условий к отдельным случаям.
- Добавим следующий методswitch:
int value = 10;
switch (value)
{
case int n when n > 0 && n < 10:
Console.WriteLine("Значение находится в диапазоне от 1 до 9.");
break;
case int n when n == 10:
Console.WriteLine("Значение равно 10.");
break;
default:
Console.WriteLine("Значение не попадает в заданные диапазоны.");
break;
}
Шаг 3: Использование when в конструкции if
Хотя when не используется напрямую в конструкции if, его можно комбинировать с другими условными операторами для достижения аналогичного эффекта.
- Добавим следующий метод:
if (value > 0 && value < 10)
{
Console.WriteLine("Значение находится в диапазоне от 1 до 9.");
}
else if (value == 10)
{
Console.WriteLine("Значение равно 10.");
}
else
{
Console.WriteLine("Значение не попадает в заданные диапазоны.");
}
Шаг 4: Преимущества использования when
Использование конструкции when имеет несколько преимуществ:
- Читаемость кода: Конструкция when делает код более читаемым и понятным.
- Гибкость: when позволяет добавлять дополнительные условия к существующим конструкциям.
- Упрощение логики: Использование when помогает избежать сложных вложенных условий.
Заключение
Конструкция when в C# является мощным инструментом, который позволяет улучшить читаемость и гибкость кода. Её использование в блоках catch, операторах switch и других контекстах делает программы более понятными и легкими в поддержке.
Для тех, кого заинтересовала данная тема, рекомендуем видеокурс Программирование на C# с Нуля до Гуру.
-
-
Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.