zoukankan      html  css  js  c++  java
  • 如何使用快速枚举遍历元素(for..in)

    1.快速遍历数组的每一个元素:

    NSArray * array = [NSArray arrayWithObjects:@"zhangsan",@"lisi",@"wangwu",@"zhaoda",@"qianer",nil];

    //方法一:快速枚举(for...in):效率最高,代码的可读性强,代码简洁易懂

    for(NSString obj in array)

    {

      NSLog(@"%@",obj);

    }

    //方法二:for循环遍历

    for(int i = 0; i < [array count]; i++)

    {

      NSString * obj = [array objectAtIndex:i];

      NSLog(@"%@",obj);

    }

    //方法三:使用枚举器NSEnumerator

    NSEnumerator * enumerator = [array reverseObjectEnumerator];

    NSString * obj = nil;

    while(obj = [enumerator nextObject])

    {

      NSLog(@"%@",obj);

    }

    //方法四:(block)使用专业的枚举方式

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

      NSLog(@"%@---%lu",obj,idx);

      if(idx == 1){

      *stop = YES;

    }

    }];

    2.快速遍历字典中的每一个元素

    NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:@"jack",@"name",@"19",@"age",@"1.8",@"height",nil];

    NSArray * allkeys = [dic allkeys];

    for(int i = 0; i < [dic count]; i++)

    {
      NSString * key = [allkeys objectAtIndex:i];

      NSString * obj = [dic objectForKey:key];

      NSLog(@"obj=%@,key=%@",obj,key);

    }

    3.快速遍历集合中的元素(NSSet)

    NSSte * set = [NSSet  setWithObjects:@"mingren",@"zuozhu",@"haizei",@"xiaoxin",nil];

    NSString * obj = [set allObjects];

    for(int i = 0; i < [set count]; i++)

    {  

      NSLog(@"%@",[obj objectAtIndex:i]);

    }

    以上就是有关数组,字典和集合的遍历元素的方法,方法还有很多,希望和各位同学相互学习,相互成长!

  • 相关阅读:
    团队冲刺第四天
    团队冲刺第三天
    团队冲刺第二天
    团队冲刺第一天
    全球疫情地图显示
    团队博客——keep running视频+PPT介绍
    周总结7
    人月神话阅读笔记03
    Java枚举类型的使用,数值的二进制表示
    四则运算器
  • 原文地址:https://www.cnblogs.com/liuxp1990/p/3416226.html
Copyright © 2011-2022 走看看