对于......语句Objective-C

时间:2011-09-19 19:55:26

标签: objective-c for-in-loop

我正在研究Objective-C,我偶然发现了这个“for ... in”的声明。我搜索它但我仍然没有得到它的工作原理。有人可以用noob友好的方式向我解释这个陈述是如何起作用的吗?

1 个答案:

答案 0 :(得分:58)

fast enumeration documentation

基本上你通常都有一个数组,你可以用一个方便的循环来获取数组中的每个项目,而不是使用NSEnumerator或整数计数变量。它使您的代码更清晰,可以在您的数组中请求每个NSString,而不是必须使用objectAtIndex为循环的每次传递分配一个变量。

比较

for (NSString *string in myArray)
{
    // do stuff...
}

要:

for (int i = 0; i < [myArray count]; i++)
{
    NSString *string = [myArray objectAtIndex:i];
    // Do stuff...
}