A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© SUPERREN_Hao 中级黑马   /  2016-1-13 20:52  /  964 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

//让NSArray存储不同对象
    Dog *dog= [[Dog alloc] initWithName:@"小哈"];
   
    NSArray *array= [NSArray arrayWithObjects:@"八戒",dog, nil];
   
    NSLog(@"%@,dog=%@",array[0],((Dog*)array[1]).name);
   
    //遍历
    for(id obj in array){
        NSLog(@"%@",obj);
    }
    NSLog(@"----------遍历的第三种方式-------------");
   
   
    //遍历的第三种方式 :用block 至少遍历一次
    [array enumerateObjectsUsingBlock:
     ^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
         if (idx==0) {
             //stop:是一个指针 指向一个BOOL型的值. 同时:如果BOOL值==YES表示停止遍历 反之继续遍历
            
             //这个跟break不一样.break表示从当前位置立刻跳出停止.但是stop只表示下一次不再遍历,当前这次还会保留.
             *stop=YES;
         }
         NSLog(@"%@---index==%ld",obj,idx);
     }];

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马