Я знаю ! используется для НЕ операции, но я нашел код, который использует ! для заполнения переменной переменной типа, допускающей значение NULL. Когда я читаю ссылку на код из Интернета, я нахожу это:
NoteDetailPage(noteId: note.id!)
Вот как это выглядит в NoteDetailPage:
const NoteDetailPage({
Key? key,
required this.noteId,
}) : super(key: key);
note.id — это тип int, допускающий значение NULL, а noteId — в int. Если я пойду noteId: note.id
, он вернет ошибку преобразования error: The argument type 'int?' can't be assigned to the parameter type 'int'.
, но когда я включу !, он не показывает никакой ошибки
Я пытался выполнить поиск в Google, но он говорит, что "!" предназначен для НЕ операций, но я не думаю, что имеет смысл помещать НЕ операции в этот код. Кто-нибудь знает функцию "!" по этому коду?
Имя знака ! — это оператор Bang в Dart.
Используя ! оператора, вы сообщаете компилятору, что переменная не будет нулевой.
ой спасибо за информацию