當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Swift AnyHashable ==(_:_:)用法及代碼示例

操作符

==(_:_:)

返回一個布爾值,指示兩個 type-erased 可散列實例是否包裝相同的值。

聲明

static func == (lhs: AnyHashable, rhs: AnyHashable) -> Bool

參數

lhs

type-erased 可散列值。

rhs

另一個 type-erased 可哈希值。

詳述

當 type-erased 時,AnyHashable 認為相同值的橋接對應項(例如 StringNSString )是等效的。如果這些兼容類型對相等使用不同的定義,則最初不同的值在轉換為 AnyHashable 時可能會比較為相等:


let string1 = "café"
let string2 = "cafe\u{301}" // U+301 COMBINING ACUTE ACCENT
let nsString1 = string1 as NSString
let nsString2 = string2 as NSString
let typeErased1 = nsString1 as AnyHashable
let typeErased2 = nsString2 as AnyHashable
print(string1 == string2)         // prints "true"
print(nsString1 == nsString2)     // prints "false"
print(typeErased1 == typeErased2) // prints "true"

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

相關用法


注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 AnyHashable ==(_:_:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。