什么是 ”!”在 Dart Flutter 中?

What is "!" in Dart Flutter?

我知道!用于 NOT 操作,但我找到了使用的代码!用可空类型变量填充变量。当我从互联网上阅读一些代码参考时,我发现:

 NoteDetailPage(noteId: note.id!)

这是它在 NoteDetailPage 中的样子:

const NoteDetailPage({
    Key? key,
    required this.noteId,
  }) : super(key: key);

note.id是一个可以为空的int类型,noteId是int类型。如果我去 noteId: note.id 那么它将 return 转换错误 error: The argument type 'int?' can't be assigned to the parameter type 'int'.,但是当我插入 ! 时,它不会显示任何错误

我尝试进行 google 搜索,但它显示“!”用于 NOT 操作,但我认为将 NOT 操作放在该代码中没有任何意义。有谁知道“!”的作用?在那个代码上?

符号名称!是Dart中的Bang运算符

通过使用!运算符,您是在告诉编译器该变量不会为空。