当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Dart Stream.singleWhere用法及代码示例


dart:async 库中Stream.singleWhere 方法的用法介绍如下。

用法:

Future<T> singleWhere(
   bool test(
   T element   
),    
   {T orElse(
)?}   
)

在此流中查找与 test 匹配的单个元素。

lastWhere 类似,但如果此流中出现多个匹配元素则为错误。

例子:

var result = await Stream.fromIterable([1, 2, 3, 6, 9, 12])
    .singleWhere((element) => element % 4 == 0, orElse: () => -1);
print(result); // 12

result = await Stream.fromIterable([2, 6, 8, 12, 24, 32])
    .singleWhere((element) => element % 9 == 0, orElse: () => -1);
print(result); // -1

result = await Stream.fromIterable([2, 6, 8, 12, 24, 32])
    .singleWhere((element) => element % 6 == 0, orElse: () => -1);
// Throws.

相关用法


注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 singleWhere method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。