zoukankan      html  css  js  c++  java
  • OC-数组遍历的四种方法

    数组遍历的四种用法

    例:NSArray *array = @[@1,@2,@3,@4];

    第一种方法--for循环

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

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

    }

    第二种方法--for循环增强版

    //常用的是

    for(NSString *str in array){

      NSLog(@"%@",str);

    }

    //万能的是

    for(id obj in array){

      NSLog(@"%@",obj);

    }

    第三种方法--枚举器-迭代器

    NSEnumerator *en = [array objectEnumerator];

    NSString *str =nil;//如果不是字符串的话,也可以用万能   id obj;

    while(str=[en nextObject]){

      NSLog(@"%@",str);

    }

    第四种方法--利用Block

    //这个方法有要求,就是不能用在不可变数组

    //NSArray *array = @[@1,@2,@3,@4];不可变数组是不对的

    //创建一个可变数组

    NSMutableArray *arr = [NSMutableArray arrayWithArray:@[@1,@2,@3,@4]];

    [arr enumeratorObjectsUsingBlock:

    ^(id obj;NSUInteger idx;BOOL *stop){

      NSLog(@"%@",obj);

      //if(idx==0){

      //*stop=YES;

         // }  

    }];

    注意点:大家都知道集合NSSet和数组NSArray有很多共同点,但是set是无序的,所以不能通过索引来获取元素,像这样的set[i],绝对错的

    所以目前本人只用枚举器来遍历数组和集合

  • 相关阅读:
    【CF580D】Kefa and Dishes
    【poj3311】Hie with the Pie
    校外实习-7.7
    校外实习-7.6
    校外实习-7.5
    校外实习-7.4
    作业九-课程总结(补充)
    作业九-课程总结
    作业四——结对编程四则运算
    作业三
  • 原文地址:https://www.cnblogs.com/wxios/p/4182784.html
Copyright © 2011-2022 走看看