我正在尝试检查哪个数组元素的值彼此相等或等于NSNumber
10。数组的计数为 15。问题是,当我针对NSNumber
10 中的值测试值时if statement
,代码似乎没有评估。
例如,在下面的数组中,代码应返回索引 0 中的值存在于索引 {0,9,10} 中,因为NSNumber
1 存在于索引 0 和 10 中,而NSNumber
10 存在于索引 9 中。
1-2-3-4-5-6-7-8-9-10-1-2-3-4-5
但是,它只评估NSNumber
索引 0 中的值是否等于NSNumber
1 而不是NSNumber
10。输出不是预期的 {0, 9, 10} 而是只有 {0, 10}。
for (NSNumber *number in mutableArray) {
self.matchingIndex = [mutableArray indexesOfObjectsPassingTest:
^BOOL(NSNumber *obj, NSUInteger idx, BOOL *stop)
{
BOOL returnValue;
NSNumber *ten = [NSNumber numberWithInt:10];
if ([number isEqualToNumber:obj] || [number isEqualToNumber:ten])
{
returnValue = TRUE;
}
return returnValue;
}];
[self testIndexSet:self.matchingIndex];
}