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

Оператор !

Оператор ! (null assertion operator) применяется к выражению, которое может иметь тип с null. Он сообщает компилятору, что в данной точке программы значение гарантированно не равно null, и позволяет использовать это значение напрямую. Если во время выполнения значение всё же окажется null, будет выброшено исключение TypeError. Оператор не принимает параметров и записывается сразу после выражения.

Синтаксис

expression!

Пример

Давайте объявим переменную с nullable-типом и присвоим ей строку, а затем получим длину строки с помощью оператора !:

void main() { String? str = 'abcde'; print(str!.length); }

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

5

Пример

Давайте попробуем применить оператор ! к переменной, которая содержит null:

void main() { String? str = null; print(str!.length); }

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

TypeError: null check operator used on a null value

Пример

Давайте получим элемент списка, который может содержать null, и приведём его к строке через оператор !:

void main() { String? res = ['a', 'b', 'c', 'd', 'e'][0]; print(res!); }

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

"a"

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

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