Objective c 如果我想知道某个对象是否在NSArray中,我该怎么做';谁的地址?
[NSArray containsObject]使用isEqual。isEqual默认地址 假设我想知道[NSArray containsObject]是否基于引用?所以我想知道数组中是否有实际的对象,而不是与其相等的对象 我想用它来比较核心数据对象。核心数据对象可能会被删除和取消引用,我想知道所有包含引用它的元素的数组会发生什么情况 isEqual默认地址 在这种情况下,有问题吗 听起来您想将对象存储在Objective c 如果我想知道某个对象是否在NSArray中,我该怎么做';谁的地址?,objective-c,xcode4.5,Objective C,Xcode4.5,[NSArray containsObject]使用isEqual。isEqual默认地址 假设我想知道[NSArray containsObject]是否基于引用?所以我想知道数组中是否有实际的对象,而不是与其相等的对象 我想用它来比较核心数据对象。核心数据对象可能会被删除和取消引用,我想知道所有包含引用它的元素的数组会发生什么情况 isEqual默认地址 在这种情况下,有问题吗 听起来您想将对象存储在isEqual不使用地址,但仍使用此检查的地址的位置,对吗 没有-[containsObje
isEqual
不使用地址,但仍使用此检查的地址的位置,对吗
没有-[containsObjectIdenticalTo:
,但是有一个-[indexOfObjectIdenticalTo:
;如果它返回的不是NSNotFound,那么它就被包含了
if ([anArray indexOfObjectIdenticalTo:anObject] != NSNotFound) {
}
我清楚地表明:
如果对象地址相同,则认为对象相同
在NSArray
和其他集合上有一系列完全相同的方法,正是出于这个目的