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

Ключевое слово required

Ключевое слово required используется при объявлении именованных параметров функции, метода или конструктора. Оно указывает компилятору, что данный параметр должен быть обязательно передан при вызове. Без required именованные параметры по умолчанию являются необязательными. Особенно часто required применяется вместе с nullable-типами и ключевым словом late.

Синтаксис

returnType functionName({required type parameter}) { // body }

Пример

Давайте объявим функцию с двумя обязательными именованными параметрами и вызовем её:

void printInfo({required String name, required int age}) { print('$name is $age years old'); } void main() { printInfo(name: 'abcde', age: 25); }

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

"abcde is 25 years old"

Пример

Если пропустить обязательный параметр, помеченный required, компилятор выдаст ошибку:

void printInfo({required String name, required int age}) { print('$name is $age years old'); } void main() { printInfo(name: 'abcde'); }

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

Error: Required named parameter 'age' must be provided.

Пример

Ключевое слово required можно комбинировать с необязательными именованными параметрами:

void printInfo({required String name, int age = 0}) { print('$name is $age years old'); } void main() { printInfo(name: 'abcde'); }

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

"abcde is 0 years old"

Пример

Особенно полезно required вместе с nullable-типами, когда нужно явно передать null в качестве значения:

void printValue({required String? value}) { print(value ?? 'default'); } void main() { printValue(value: null); }

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

"default"

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

  • ключевое слово nullable,
    которое разрешает значение null
  • ключевое слово late,
    которое откладывает инициализацию
  • оператор ??,
    который задаёт значение по умолчанию
  • ключевое слово !,
    которое утверждает не-null значение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить