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

Тип Object?

Тип Object? - это nullable-версия типа Object. Он позволяет переменной хранить либо любой объект, либо значение null. В отличие от обычного Object, который не может быть равен null, тип Object? явно допускает отсутствие значения. Это полезно, когда заранее неизвестно, будет ли переменная инициализирована объектом. Перед использованием такого значения обычно требуется проверка на null или применение операторов ?, ?? и !.

Синтаксис

Object? variable;

Пример

Давайте объявим переменную с типом Object? и присвоим ей значение null:

void main() { Object? value = null; print(value); }

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

null

Пример

Давайте присвоим переменной с типом Object? строку и выведем её на экран:

void main() { Object? value = 'abcde'; print(value); }

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

"abcde"

Пример

Давайте проверим значение на null перед его использованием:

void main() { Object? value = 'abcde'; if (value != null) { print(value); } else { print('value is null'); } }

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

"abcde"

Пример

Давайте используем оператор ??, чтобы задать значение по умолчанию, если переменная равна null:

void main() { Object? value = null; Object res = value ?? 'default'; print(res); }

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

"default"

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

  • тип nullable-object,
    который описывает nullable-тип Object?
  • тип dynamic,
    который допускает любые значения без проверки
  • тип Never,
    который обозначает отсутствие значения
  • тип void,
    который используется для функций без результата
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить