For...in 语句 Objective-C
Posted
技术标签:
【中文标题】For...in 语句 Objective-C【英文标题】:For...in statement Objective-C 【发布时间】:2011-11-20 13:12:47 【问题描述】:我正在学习 Objective-C,我遇到了这个“for...in”语句。我搜索了它,但我仍然不明白它是如何工作的。有人可以以对菜鸟友好的方式向我解释此语句的工作原理吗?
【问题讨论】:
你是说幕后,还是你怎么用的? 搜索“快速枚举目标c”可以找到很多 【参考方案1】:见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...
【讨论】:
除了更干净之外,它也更快。这也被称为“快速枚举”是有原因的。 更快、更安全、更有趣……好吧,也许不是最后一个。 非常感谢!但我仍然不明白“字符串”部分的特定功能是什么。如果我在数组中除了字符串之外还有其他对象,这将如何工作?它仍然会枚举所有对象还是会跳过不是字符串的内容? 如果您认为数组可能包含多种类型的对象,您可以将类型设置为id,并在循环中检查它的类。 谢谢 jrturton,我想我现在明白了 :)以上是关于For...in 语句 Objective-C的主要内容,如果未能解决你的问题,请参考以下文章