NSMutableArray -removeObject:如果它有不同的内存地址,还会删除NSString吗?

4 iphone cocoa-touch uikit nsarray

示例:我添加了一些NSString对象NSMutableArray: @"Foo", @"Bar", @“FooBar".现在在其他地方我再次访问该数组,我想删除@"Foo".所以我创建了一个新的NSString @"Foo",并将其传递给-removeObject:.文档没有说明哪些标准-removeObject有效.我认为它只关注内存地址,所以在这种情况下它什么都不做.那是对的吗?

小智 9

根据removeObject的文档:"匹配是根据对象对isEqual:message的响应确定的",并将字符串与哈希值进行比较("如果两个对象相等,则它们必须具有相同的哈希值"),所以,YES ,那应该是不正确的.