NSDictionary可以将NSSet作为密钥吗?

ero*_*ppa 3 iphone cocoa cocoa-touch objective-c

我知道你可以使用任何对象作为NSDictionary的键,但问题是它是否能够检索正确的值?支持我有一个条目,其中key = {1,3,5}和value = {@"hello"}.我能通过传递集合{3,5,1}从这个字典条目中检索吗?

顺序说,键是基于指针匹配还是实际比较集的内容?(如果是前者,我怎么能克服这个?)

小智 6

密钥的相等性是使用相关密钥上的isEqual完成的.因此,{1,3,5}和{3,5,1}的比较(假设数字由NSNUmber实例表示)将为YES.

  • 那,和`NSSet`符合`NSCopying`,这是`NSDictionary`键的另一个要求. (4认同)