考虑以下语句:
for (NSString *string in anArray) {
NSLog(@"%@", string);
}
如何string在anArray不使用传统for循环且不检查stringin 中每个对象的值的情况下获取 in 的索引anArray?
考虑以下语句:
for (NSString *string in anArray) {
NSLog(@"%@", string);
}
如何string在anArray不使用传统for循环且不检查stringin 中每个对象的值的情况下获取 in 的索引anArray?
数组保证按对象顺序迭代。所以:
NSUInteger index = 0;
for(NSString *string in anArray)
{
NSLog(@"%@ is at index %d", string, index);
index++;
}
或者,使用块枚举器:
[anArray
enumerateObjectsUsingBlock:
^(NSString *string, NSUInteger index, BOOL *stop)
{
NSLog(@"%@ is at index %d", string, index);
}];
试试这个。
for (NSString *string in anArray)
{
NSUInteger index = [anArray indexOfObject:string];
}