for循环在OC和swift中的小区别

  1. OC通常用forin
 NSArray *arr1 = @[@[@1,@2],@[@3,@4],@[@9,@8,@7]];
    for (NSArray *arr in arr1) {
        NSLog(@"%@", arr);
        for (NSNumber *index in arr) {
            NSLog(@"%@", index);
            if ([index isEqualToNumber:@1]) {
                NSLog(@"lalallalalal");
                return;
            }
        }
    }
屏幕快照 2017-08-09 下午4.48.59.png

如果用break代替return 结果如下


屏幕快照 2017-08-09 下午4.50.10.png

2.在swift中通常用foreach

let arr1 = [[1,2],[3,4]]
        arr1.forEach { (arr) in
            print(arr)
            arr.forEach({ (index) in
                print(index)
                if index == 3{
                    print("jiushiwole")
                    return
                }
                print("nengzhixingdaozherme")
            })
        }
屏幕快照 2017-08-09 下午5.05.16.png

总结

在OC中 return起终止整个程序运行的作用。而break只是终止本层循环,若有两层循环,使用break将跳出最里层的循环,从第二层循环下一个index重新开始遍历。continue则是跳过最内层循环continue后面的语句,重新从最内层下一个index开始遍历
在swift中break不能用于foreach中,而return的作用就像continue在OC中的作用,只是跳过了本次循环余下的部分 从最内层foreach的下一个index开始继续执行

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容