本文共 806 字,大约阅读时间需要 2 分钟。
顾名思义,在遍历NSMutableArray的时候对其进行了操作.
1. 最简单的方法是创建一个新的相同的数组,一个用来进行遍历,一个进行操作.
错误写法是:
NSMutableArray *dbArray = [....]; for (... in dbArray) { if (.....) { [dbArray removeObjectAtIndex:.]; } }正确的写法是:
NSMutableArray *dbArray = [....];NSArray *tempArray = [NSArray arrayWithArray:dbArray]; for (... in tempArray) { if (.....) { [dbArray removeObjectAtIndex:.]; } }参考自:
NSMutableArray *tempArray = [[NSMutableArray alloc]initWithObjects:, nil]; [tempArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { if (....) { *stop = YES; if (*stop == YES) { [tempArray replaceObjectAtIndex:idx withObject:@"3333333"]; } } if (*stop) { NSLog(@"array is %@",tempArray); } }];
转载地址:http://esnpi.baihongyu.com/