实例方法
contains(where:)
返回一个布尔值,指示序列是否包含满足给定谓词的元素。
声明
func contains(where predicate: (Self.Element) throws -> Bool) rethrows -> Bool
返回值
true
如果序列包含满足 predicate
的元素;否则,false
。
参数
predicate
一个闭包,它将序列的一个元素作为其参数并返回一个布尔值,该值指示传递的元素是否表示匹配。
详述
您可以使用谓词检查不符合 Equatable
协议的类型的元素,例如本例中的 HTTPResponse
枚举。
enum HTTPResponse {
case ok
case error(Int)
}
let lastThreeResponses: [HTTPResponse] = [.ok, .ok, .error(404)]
let hadError = lastThreeResponses.contains { element in
if case .error = element {
return true
} else {
return false
}
}
// 'hadError' == true
或者,可以通过Equatable
元素的范围或一般条件来满足谓词。此示例说明如何检查阵列的费用是否超过 100 美元。
let expenses = [21.37, 55.21, 9.32, 10.18, 388.77, 11.41]
let hasBigPurchase = expenses.contains { $0 > 100 }
// 'hasBigPurchase' == true
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相关用法
- Swift StrideThrough contains(_:)用法及代码示例
- Swift StrideThrough compactMap(_:)用法及代码示例
- Swift StrideThrough map(_:)用法及代码示例
- Swift StrideThrough reduce(_:_:)用法及代码示例
- Swift StrideThrough shuffled()用法及代码示例
- Swift StrideThrough suffix(_:)用法及代码示例
- Swift StrideThrough prefix(_:)用法及代码示例
- Swift StrideThrough split(maxSplits:omittingEmptySubsequences:whereSeparator:)用法及代码示例
- Swift StrideThrough prefix(while:)用法及代码示例
- Swift StrideThrough sorted()用法及代码示例
- Swift StrideThrough max()用法及代码示例
- Swift StrideThrough max(by:)用法及代码示例
- Swift StrideThrough joined(separator:)用法及代码示例
- Swift StrideThrough sorted(by:)用法及代码示例
- Swift StrideThrough elementsEqual(_:)用法及代码示例
- Swift StrideThrough filter(_:)用法及代码示例
- Swift StrideThrough forEach(_:)用法及代码示例
- Swift StrideThrough enumerated()用法及代码示例
- Swift StrideThrough lexicographicallyPrecedes(_:)用法及代码示例
- Swift StrideThrough shuffled(using:)用法及代码示例
- Swift StrideThrough joined()用法及代码示例
- Swift StrideThrough first(where:)用法及代码示例
- Swift StrideThrough dropLast(_:)用法及代码示例
- Swift StrideThrough flatMap(_:)用法及代码示例
- Swift StrideThrough starts(with:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 StrideThrough contains(where:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。