Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
949 of 1492 menu
◀ ▶

ThrowIfNegative и родственные методы

Отдельного ThrowIf нет - есть семейство методов: ThrowIfNegative, ThrowIfNegativeOrZero, ThrowIfGreaterThan, ThrowIfLessThan. Они сравнивают значение с условием и при ошибке бросают ArgumentOutOfRangeException.

Синтаксис

ArgumentOutOfRangeException.ThrowIfNegative(num, nameof(num)); ArgumentOutOfRangeException.ThrowIfGreaterThan(num, limit, nameof(num));

Пример

Давайте поймаем ThrowIfNegative для -1:

using System; class Program { static void Main() { int num = -1; try { ArgumentOutOfRangeException.ThrowIfNegative(num, nameof(num)); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex.Message); } } }

Результат выполнения кода:

num ('-1') must be a non-negative value. (Parameter 'num') Actual value was -1.

Пример

Давайте успешно проверить 5 и напечатать "ok":

using System; class Program { static void Main() { int num = 5; try { ArgumentOutOfRangeException.ThrowIfNegative(num, nameof(num)); Console.WriteLine("ok"); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex.Message); } } }

Результат выполнения кода:

"ok"

Пример

Давайте поймаем ThrowIfGreaterThan и ThrowIfLessThan:

using System; class Program { static void Main() { int num = 10; try { ArgumentOutOfRangeException.ThrowIfGreaterThan(num, 5, nameof(num)); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex.Message.Split('\n')[0]); } num = 1; try { ArgumentOutOfRangeException.ThrowIfLessThan(num, 5, nameof(num)); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex.Message.Split('\n')[0]); } } }

Результат выполнения кода:

num ('10') must be less than or equal to '5'. (Parameter 'num') num ('1') must be greater than or equal to '5'. (Parameter 'num')

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить