具有列表的空值感知运算符

时间:2018-05-13 11:59:06

标签: dart

Dart 中,与??运算符组合的方法的 null-aware 运算符效果不佳。

具有如下调用链的图像:

object.getter.getter.getter.getter

现在当object可以为null并且我不想要例外时我必须写这个:

object?.getter?.getter?.getter?.getter

这是对每个getter的空检查,即使只有object可以为null,但getter显然不起作用。

我对此感到满意。但是现在我有一个场景,我想返回另一个值,如果为null,但我正在使用列表:

list[index][index][index]

如何在List getter上使用null-aware运算符?

这不起作用:

list?[index]

并且 Dart 中的List不存在。

list?.get(index)

我想实现这样的目标:

list?[index]?[index]?[index] ?? 0

我知道list只有null

结论

我认为我可能会误解某些东西,因此我不确定我的陈述是否属实:

  

Dart 中,与??运算符组合的方法的 null-aware 运算符效果不佳。

代码可以使用:

list == null ? 0 : list[index][index][index]

0 个答案:

没有答案