//让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);
}]; |
|