对 removeObject 的理解

来源:互联网 发布:浦发淘宝信用卡好用吗 编辑:程序博客网 时间:2024/06/06 02:35
数组调用 removeObject  时底层会调用  

- (BOOL)isEqual:(id)object 方法遍历数组中的对象,根据传入的 object 对象的指针,判断当前要比较的对象的指针是否和object的指针一样,如果一样则就是要删出的对象,如果不一样则继续遍历。


如遇到不想根据对象的指针判断两个对象相等,如果只根据对象的某个属性判断两个对象是否相等,则比较对象中可以重写  - (BOOL)isEqual:(id)object 方法,根据对象的某个属性判断两个对象是否相等。

 

例如:

- (BOOL)isEqual:(HMObject *)otherEmotion

{

    NSLog(@"%@--isEqual--%@",self.code, otherEmotion.code);

    return [self.codeisEqualToString:otherEmotion.code];

}

根据HMObject中的code属性判断传入的otherEmotion对象,是否和当前对象相等,如果两个对象的code属性相等,则两个对象相等。

0 0