你得到的价值是NSNotFound
. 你得到NSNotFound
是因为@"Gold"
不等于@"Gold:0"
。
您应该尝试以下方法
NSUInteger index = [arrSeatSel indexOfObjectPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop){
return [obj hasPrefix:type];
}];
if (index != NSNotFound) {
[arrTotRows addObject:[arrSeatSel objectAtIndex:index]];
}
更新
-indexOfObjectPassingTest:
是一个正在运行的以下循环。注意:/* TEST */
是一些在找到正确索引时返回 true 的代码。
NSUInteger index = NSNotFound;
for (NSUInteger i = 0; i < [array count]; ++i) {
if (/* TEST */) {
index = i;
break;
}
}
在我的第一个示例中,/* TEST */
是[obj hasPrefix:type]
. 最终的 for 循环看起来像。
NSUInteger index = NSNotFound;
for (NSUInteger i = 0; i < [arrSeatSel count]; ++i) {
if ([arrSeatSel[i] hasPrefix:type]) {
index = i;
break;
}
}
if (index != NSNotFound) {
[arrTotRows addObject:[arrSeatSel objectAtIndex:index]];
}
我-indexOfObjectPassingTest:
更喜欢。
该[obj hasPrefix:type]
部分只是比较字符串的一种不同方式。阅读-hasPrefix:
文档以获取更多详细信息。
希望能回答你所有的问题。