РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
462 of 723 menu

Класс ArgumentError

Класс ArgumentError представляет собой ошибку, которая возникает, когда функция или метод получает аргумент, не соответствующий ожидаемому значению. В первый параметр конструктора мы передаем сообщение об ошибке, во второй - имя аргумента, а в третий - непосредственно само некорректное значение.

Данный класс наследуется от класса Error и является частью встроенной системы обработки ошибок Dart. Он часто используется для валидации входных данных и сигнализирует о том, что программист передал в функцию неверный параметр.

Синтаксис

ArgumentError([String? message, String? name, dynamic value])

Пример

Давайте создадим объект ошибки и выведем его в консоль с помощью функции print:

void main() { var error = ArgumentError('Invalid value', 'age', -5); print(error); }

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

"Invalid argument (age): Invalid value: -5"

Пример

Давайте создадим функцию, которая проверяет возраст, и выбросим ошибку ArgumentError в случае некорректного значения:

void checkAge(int age) { if (age < 0) { throw ArgumentError('Age cannot be negative', 'age', age); } print('Age is $age'); } void main() { try { checkAge(-1); } catch (e) { print(e); } }

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

"Invalid argument (age): Age cannot be negative: -1"

Пример

Давайте перехватим ошибку и выведем только ее сообщение, используя свойство message:

void main() { try { throw ArgumentError('Value must be positive'); } on ArgumentError catch (e) { print(e.message); } }

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

"Value must be positive"

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

  • ключевое слово throw,
    которое выбрасывает исключение
  • класс RangeError,
    который сигнализирует о выходе за пределы диапазона
  • класс Error,
    который является базовым классом для ошибок
  • конструкция try,
    которая позволяет обрабатывать исключения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить