遍历NSArray

   NSArray *arr=@[@"1",@"2",@"3",@"4"];

      第一种方法

  最常见的方法

     for (int i = 0; i < arr.count; i++) {

      NSLog(@"%@",arr[i]);

  }

 

       第二种方法  效率比较高

   for (NSArray *ar in arr) {

         NSLog(@"%@",ar);

    }

  

     // 第三种方法 block 方法

    [arr enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

        NSLog(@"%@,%zi",obj,idx);

        *stop = YES;//改变外边的Bool,终止遍历

    }];

    

        第四种方法  利用迭代器

// 获取每一个元素

    1.  NSEnumerator *enume = [arr objectEnumerator];

           while ((arr=[enume nextObject])!= nil) {

          NSLog(@"%@",arr);

       }

  2.    NSArray *arr2 = [enume allObjects];

      NSLog(@"%@",arr2);

 

       1 反遍历  迭代器

   NSEnumerator *enume = [arr  reverseObjectEnumerator];      

       while ((arr=[enume nextObject])!= nil) {

                   NSLog(@"%@",arr);

                 }

 

 2.  反遍历

    [arr enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

         NSLog(@"%@",obj);

       }];

 

posted @ 2015-09-01 00:35  z小姐的iOS  阅读(146)  评论(0编辑  收藏  举报