实例方法
contains(where:)
返回一个布尔值,该值指示异步序列是否包含满足给定谓词的元素。
声明
func contains(where predicate: (Self.Element) async throws -> Bool) async rethrows -> Bool
返回值
true
如果序列包含满足谓词的元素;否则,false
。
参数
predicate
一个闭包,它将异步序列的元素作为其参数并返回一个布尔值,该值指示传递的元素是否表示匹配。
详述
您可以使用谓词检查不符合Equatable
协议的类型的元素,或查找满足一般条件的元素。
在此示例中,名为 Counter
的异步序列生成从 1
到 10
的 Int
值。 contains(where:)
方法检查序列是否产生可被 3
整除的值:
let containsDivisibleByThree = await Counter(howHigh: 10)
.contains { $0 % 3 == 0 }
print(containsDivisibleByThree)
// Prints: true
每次异步序列产生一个元素时,谓词都会执行,直到谓词找到匹配项或序列结束。
可用版本
iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+
相关用法
- Swift AsyncStream contains(_:)用法及代码示例
- Swift AsyncStream compactMap(_:)用法及代码示例
- Swift AsyncStream first(where:)用法及代码示例
- Swift AsyncStream prefix(_:)用法及代码示例
- Swift AsyncStream drop(while:)用法及代码示例
- Swift AsyncStream max(by:)用法及代码示例
- Swift AsyncStream dropFirst(_:)用法及代码示例
- Swift AsyncStream reduce(_:_:)用法及代码示例
- Swift AsyncStream prefix(while:)用法及代码示例
- Swift AsyncStream allSatisfy(_:)用法及代码示例
- Swift AsyncStream min()用法及代码示例
- Swift AsyncStream flatMap(_:)用法及代码示例
- Swift AsyncStream init(_:bufferingPolicy:_:)用法及代码示例
- Swift AsyncStream init(unfolding:onCancel:)用法及代码示例
- Swift AsyncStream filter(_:)用法及代码示例
- Swift AsyncStream min(by:)用法及代码示例
- Swift AsyncStream map(_:)用法及代码示例
- Swift AsyncStream max()用法及代码示例
- Swift AsyncStream用法及代码示例
- Swift AsyncSequence dropFirst(_:)用法及代码示例
- Swift AsyncSequence reduce(_:_:)用法及代码示例
- Swift AsyncSequence first(where:)用法及代码示例
- Swift AsyncSequence prefix(_:)用法及代码示例
- Swift AsyncSequence map(_:)用法及代码示例
- Swift AsyncSequence allSatisfy(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 AsyncStream contains(where:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。