在启用空值安全的情况下,如何在Iterable.firstWhere中从orElse返回空值?

在 null-safe dart 之前,以下是有效的语法:

final list = [1, 2, 3];
final x = list.firstWhere((element) => element > 3, orElse: () => null);

if (x == null) {
  // do stuff...
}

现在,firstWhere需要orElse返回 an int,而不是 an int?,因此我不能返回 null。

如何从 返回 null orElse

回答

一个方便的函数 ,firstWhereOrNull解决了这个确切的问题。

导入package:collection,其中包括Iterable.

import 'package:collection/collection.dart';

final list = [1, 2, 3];
final x = list.firstWhereOrNull((element) => element > 3);

if (x == null) {
  // do stuff...
}


以上是在启用空值安全的情况下,如何在Iterable.firstWhere中从orElse返回空值?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>