- String a = b ?? 'hello';
如果b等于null,则a将赋值为hello
- b ??= 'hello';
如果b为null的情况下,b等于hello。如果不为null则不作任何操作
- a?.p
- a?.m()
如果a为空,则直接返回null不执行后边的操作
如果你确定一个可为空类型的表达式不是空的,你可以添加!来让Dart把它当作不为空的。
mixin SingleTickerProviderStateMixin<T extends StatefulWidget> on State<T> implements TickerProvider {
Ticker? _ticker;
@override
Ticker createTicker(TickerCallback onTick) {
...
_ticker = Ticker(onTick, debugLabel: kDebugMode ? 'created by $this' : null);
return _ticker!;
}
...
}