iOS 关于循环

oc语言中有三种遍历数组的方式,一是传统的for循环,二是for-in循环,三是迭代器。其中,第一种方式的效率最低。第二种遍历方法如下,第三种使用比较少,你可以自己去网上看下。

如果在for in 循环里,对这个数组进行了修改的话,无论是增,删,修改数组元素位置,都会扔一个异常出来,错误是被遍历的数组已被销毁(<__NSArrayM: 0xa4fc000> was mutated while being enumerated.


但是有一种情况是可以的 那就是修改数组的值 不要修改位置什么的

// 修改

for (Employee *emp in emps) {

emp.height = @2.0;

}

// 删除

for (NSString * str in names)

{

if ([str isEqualTo: @"something"]){

[names removeObject: str];

break;

//一定要有break,否则会出错的。

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容