skipWhile 方法
- bool test(
- T element
在满足测试条件时跳过此流的数据事件。
返回一个与该流具有相同事件但排除了数据事件的流。当数据事件导致测试结果为非 true
或 test
调用抛出异常时,测试失败。如果调用抛出异常,错误事件而不是数据事件会在返回的流中发出;否则,当 test
返回非 true 时,发出的事件成为第一个数据事件。
返回的流提供了未修改的错误和完成事件。
如果此流是广播流,则返回的流也是广播流。对于广播流,事件只有在返回的流被监听时才会进行检查。
示例
final stream = Stream<int>.periodic(const Duration(seconds: 1), (i) => i)
.take(10)
.skipWhile((x) => x < 5);
stream.forEach(print); // Outputs events: 5, ..., 9.
实现
Stream<T> skipWhile(bool test(T element)) {
return new _SkipWhileStream<T>(this, test);
}