操作符
~=(_:
~=(_:_:)
返回一个布尔值,指示两个参数是否按值相等匹配。
声明
func ~= <T>(a: T, b: T) -> Bool where T : Equatable
参数
lhs
要比较的值。
rhs
另一个要比较的值。
详述
pattern-matching 运算符 (~=
) 在 case
语句内部用于模式匹配。当您匹配 case
语句中的 Equatable
值时,会在后台调用此运算符。
let weekday = 3
let lunch: String
switch weekday {
case 3:
lunch = "Taco Tuesday!"
default:
lunch = "Pizza again."
}
// lunch == "Taco Tuesday!"
在此示例中,case 3
表达式使用此 pattern-matching 运算符来测试 weekday
是否等于值 3
。
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相关用法
- Swift KeyValuePairs flatMap(_:)用法及代码示例
- Swift String.UTF8View first用法及代码示例
- Swift Result.Publisher zip(_:_:_:)用法及代码示例
- Swift Optional.Publisher reduce(_:_:)用法及代码示例
- Swift Int8 ~(_:)用法及代码示例
- Swift SetAlgebra isStrictSubset(of:)用法及代码示例
- Swift UInt +(_:)用法及代码示例
- Swift Array enumerated()用法及代码示例
- Swift FlattenSequence prefix(_:)用法及代码示例
- Swift Slice endIndex用法及代码示例
- Swift LazySequence split(maxSplits:omittingEmptySubsequences:whereSeparator:)用法及代码示例
- Swift MutableCollection partition(by:)用法及代码示例
- Swift ReversedCollection min(by:)用法及代码示例
- Swift RandomNumberGenerator用法及代码示例
- Swift Dictionary.Keys shuffled()用法及代码示例
- Swift AnySequence elementsEqual(_:)用法及代码示例
- Swift UInt &<<(_:_:)用法及代码示例
- Swift Optional.Publisher tryDrop(while:)用法及代码示例
- Swift DefaultIndices endIndex用法及代码示例
- Swift Substring.UnicodeScalarView insert(contentsOf:at:)用法及代码示例
- Swift LazyFilterSequence dropFirst(_:)用法及代码示例
- Swift LazySequence suffix(from:)用法及代码示例
- Swift ArraySlice starts(with:)用法及代码示例
- Swift Int16.Words max()用法及代码示例
- Swift ArraySlice reduce(_:_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 ~=(_:_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。