这是我在 Flutter 源代码中看到的新赋值运算符:
splashFactory ??= InkSplash.splashFactory;
textSelectionColor ??= isDark ? accentColor : primarySwatch[200];
这个赋值运算符的含义是什么?
Flutter源码中的示例 https://github.com/flutter/flutter/blob/57a13c3e3bb94d1997815faf33aa2eb17690ee46/packages/flutter/lib/src/material/theme_data.dart#L338
??= 是一个新的空感知运算符。具体来说 ??= 是空感知赋值运算符。
??
if 为空运算符。expr1 ?? expr2
评估为expr1
if not null
, 否则expr2
.
?? =
空感知赋值。v ??= expr
causes v
待分配expr
除非v
is null
.
?。
空感知访问。x?.p
评估为x.p
if x
is not null
,否则计算结果为null
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)