Конструктор value класса RangeError
Конструктор value класса RangeError создает
исключение, которое возникает, когда значение
не попадает в допустимый диапазон. В первый
параметр мы передаем значение, которое вышло
за пределы диапазона. Второй необязательный
параметр задает имя параметра или переменной.
Третий необязательный параметр принимает
сообщение с дополнительным описанием ошибки.
Данный конструктор является именованным
конструктором класса RangeError и имеет
сигнатуру RangeError.value.
Синтаксис
RangeError.value(value, [name, message])
Пример
Давайте создадим ошибку диапазона с помощью
конструктора value и выведем ее в консоль:
void main()
{
var err = RangeError.value(5, 'index');
print(err);
}
Результат выполнения кода:
RangeError (index): Invalid value: Not in inclusive range 0..4: 5
Пример
Давайте добавим сообщение с описанием ошибки через третий параметр:
void main()
{
var err = RangeError.value(10, 'length', 'Value is too big');
print(err);
}
Результат выполнения кода:
RangeError (length): Value is too big: Invalid value: Not in inclusive range 0..9: 10
Пример
Давайте перехватим ошибку диапазона, созданную
конструктором value, с помощью блока
try и catch:
void main()
{
try
{
throw RangeError.value(7, 'index');
}
catch (e)
{
print('Caught: $e');
}
}
Результат выполнения кода:
"Caught: RangeError (index): Invalid value: Not in inclusive range 0..6: 7"
Смотрите также
-
класс
RangeError,
который представляет ошибку диапазона -
метод
index,
который создает ошибку диапазона для индекса -
метод
value,
который создает ошибку диапазона для значения -
ключевое слово
throw,
которое выбрасывает исключение