我有一个for循环状态,如下:
for(NSString* name in nameArray)
nameArray是NSArray。
在上面的语句中,它对于nameArray中的NSString * name是什么意思
答案 0 :(得分:3)
遍历nameArray中的所有NSString *。 写得不那么干净:
for (int i=0;i<[nameArray count];++i) {
NSString *name = [nameArray objectAtIndex:i];
// Do stuff
}
请记住:不要迭代一个可变数组并改变它(并确保没有其他线程可以)。在这种情况下,您需要在每次迭代时调用count
,如上所示。
答案 1 :(得分:1)
这是Objective-C 2.0中引入的快速枚举语法。查看this教程了解详细信息。您还可以通过谷歌“客观c快速枚举”获取在线提供的许多其他资源。
答案 2 :(得分:0)
这意味着将对nameArray
中的每个对象执行括号内的代码,您将通过NSString *name
变量访问该对象。