我已经看到过关于 NSArrayindexOfObjectIdenticalTo:
方法的类似问题,但我希望我的提问能产生简单的答案。搜索以编程方式构建的字符串是否无用?
NSArray* theArray = [[NSArray alloc] initWithObjects:@"John", nil];
NSString* searchString1 = @"John";
NSString* stringComponent = @"Jo";
NSString* searchString2 = [stringComponent stringByAppendingFormat:@"hn"];
BOOL testContains1 = [theArray containsObject:searchString1];
int testIndex1 = [theArray indexOfObjectIdenticalTo:searchString1];
BOOL testContains2 = [theArray containsObject:searchString2];
int testIndex2 = [theArray indexOfObjectIdenticalTo:searchString2];
在上面的示例中,testContains1
两者testContains2
都返回相同的值,即true
. 但是testIndex1
和testIndex2
不同;testIndex1
为 0,因为它在索引 0 处发现了与预期相同的对象,但不幸testIndex2
的是 2147483647 (NSNotFound)。