判等

let str1 = "字符串1"

let str2 = "字符串1"

let str3 = "字符串3"

let result1 = str1 == str2      // true

let result2 = str1 == str3      // false

/*

OC 中的  == 是判断两个对象是否指向同一块内存地址 即 isEqual:的第一步,

isEqual: 首先判断 == 即是否指向同一个地址,如果是,直接 返回 yes

如果地址不等于,会判断是否是同类对象或者非空,空货非同类对象直接返回 no

而后一次判断对象对应的属性是否相等,若都相等,返回 yes

即 仅判断地址是否相等  使用 == ,  这个最严格

其次是是 isEqual:  比 == 宽松写,放宽了条件,即使地址不相等,其他所有属性都相等,也返回 true

isEqualToString: 是 NSString 的方法

Swift中的 == 是操作符, 对于 NSOjbect 的子类来说,相当于比较对象地址,即 OC 中的 isEqual:

*/

你可能感兴趣的:(判等)