Flutter 什么事?。你喜欢飞镖吗?
在Dart语言中“?”语法起什么作用?我这里有一个来自颤振的scaffold.dart代码的示例:Flutter 什么事?。你喜欢飞镖吗?,flutter,dart,syntax,conditional-statements,Flutter,Dart,Syntax,Conditional Statements,在Dart语言中“?”语法起什么作用?我这里有一个来自颤振的scaffold.dart代码的示例: _drawerKey.currentState?.open(); 这是一个空安全运算符 使用?。当您想要在对象上调用方法/getter时,如果 对象不为null(否则,返回null) 仅当它不为空时才调用open() 更多信息: 要保护对可能为null的对象的属性或方法的访问,请在点(.)之前加上问号(?): 上述代码相当于以下代码: (myObject != null) ? myObject.
_drawerKey.currentState?.open();
这是一个空安全运算符 使用?。当您想要在对象上调用方法/getter时,如果 对象不为null(否则,返回null) 仅当它不为空时才调用
open()
更多信息:
要保护对可能为null的对象的属性或方法的访问,请在点(.)之前加上问号(?):
上述代码相当于以下代码:
(myObject != null) ? myObject.anyProperty: null
您可以链接?的多种用途?。在一个表达式中:
myObject?.anyProperty?.anyMethod()
如果myObject或myObject.anyProperty为null,前面的代码将返回null(并且从不调用anyMethod()
更多信息,请阅读:
(myObject != null) ? myObject.anyProperty: null
myObject?.anyProperty?.anyMethod()