zoukankan      html  css  js  c++  java
  • isEqual


    1
    NSString *str1 = @"123"; 2 NSString *str2 = [NSString stringWithFormat:@"%@", str1]; 3

    大家明白, str1和str2在内存中的地址是不一样的.

    如果用 isEqual:比较两者, 明显返回值为 NO;

    为了我们使用方便, 我在.m实现中, 对isEqual进行了重写, 按照str1 和 str2的值来比较:

     1 /**
     2  *  常用来比较两个对象是否是否一样
     3  *
     4  *  @另外一个对象 (内存地址一样才相等)
     5  */
     6 - (BOOL)isEqual:(PPEmotionModel *)object
     7 {
     8 //    if ([self.chs isEqualToString:object.chs] || [self.code isEqualToString:object.code])
     9 //    {
    10 //        return YES;
    11 //    }else{
    12 //        return NO;
    13 //    }
    14     return [self.chs isEqualToString:object.chs] || [self.code isEqualToString:object.code];
    15 }

    注意: 内存的分布!!!

    所以在删除数组中重复元素(可以是对象)的时候, 可以直接移除

    1 [Emotions removeObject:emotion];
  • 相关阅读:
    Navicat远程连接服务器Mysql
    JSP与Servlet之间传值
    JSP获取绝对路径
    PIL的库学习
    科学计算与可视化
    预测球类比赛结果
    预测球类比赛结果
    汉诺塔问题
    有进度条圆周率计算
    turtle学习心得
  • 原文地址:https://www.cnblogs.com/guangleijia/p/5161818.html
Copyright © 2011-2022 走看看