实例方法
drop(while:)
从基本异步序列中省略元素,直到给定的闭包返回 false,之后它会遍历所有剩余的元素。
声明
@preconcurrency func drop(while predicate: @escaping (Self.Element) async -> Bool) -> AsyncDropWhileSequence<Self>
返回值
一个异步序列,它跳过基本序列中的值,直到提供的闭包返回 false
。
参数
predicate
一个闭包,它接受一个元素作为参数并返回一个布尔值,指示是否从修改后的序列中删除该元素。
详述
使用drop(while:)
从异步序列中省略元素,直到接收到的元素满足您指定的条件。
在此示例中,名为 Counter
的异步序列生成从 1
到 10
的 Int
值。 drop(while:)
方法导致修改后的序列忽略接收到的值,直到遇到可被 3
整除的值:
let stream = Counter(howHigh: 10)
.drop { $0 % 3 != 0 }
for await number in stream {
print("\(number) ", terminator: " ")
}
// prints "3 4 5 6 7 8 9 10"
在谓词返回 false
之后,序列不再执行它,从那时起,序列按原样传递其底层序列中的元素。
可用版本
iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+
相关用法
- Swift AsyncThrowingCompactMapSequence dropFirst(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence prefix(while:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence compactMap(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence map(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence max()用法及代码示例
- Swift AsyncThrowingCompactMapSequence filter(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence contains(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence contains(where:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence max(by:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence flatMap(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence min()用法及代码示例
- Swift AsyncThrowingCompactMapSequence min(by:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence first(where:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence allSatisfy(_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence reduce(_:_:)用法及代码示例
- Swift AsyncThrowingCompactMapSequence prefix(_:)用法及代码示例
- Swift AsyncThrowingFlatMapSequence min()用法及代码示例
- Swift AsyncThrowingMapSequence reduce(_:_:)用法及代码示例
- Swift AsyncThrowingPrefixWhileSequence drop(while:)用法及代码示例
- Swift AsyncThrowingMapSequence contains(_:)用法及代码示例
- Swift AsyncThrowingPrefixWhileSequence filter(_:)用法及代码示例
- Swift AsyncThrowingDropWhileSequence first(where:)用法及代码示例
- Swift AsyncThrowingFilterSequence drop(while:)用法及代码示例
- Swift AsyncThrowingDropWhileSequence flatMap(_:)用法及代码示例
- Swift AsyncThrowingStream filter(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 AsyncThrowingCompactMapSequence drop(while:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。