使用block enumerateObjectsUsingBlock更快接的删除数组里面的内容以及修改数组里面的内容的方法

今天终于找到了一个更快接的删除数组里面的内容以及修改数组里面的内容的方法:

NSMutableArray  *tempArray = [[NSMutableArray alloc] initWithObjects:@"12",@"23",@"34",@"45",@"56",nil];

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

if ([objisEqualToString:@"34"]) {

*stop =YES;

if (*stop ==YES) {

[tempArray replaceObjectAtIndex:idxwithObject:@"3333333"];

            }

        }

if (*stop) {

NSLog(@"array is %@",tempArray);

        }

    }];

利用block来操作,根据查阅资料,发现block遍历比for便利快20%左右,这个的原理是这样的:

找到符合的条件之后,暂停遍历,然后修改数组的内容

你可能感兴趣的:(使用block enumerateObjectsUsingBlock更快接的删除数组里面的内容以及修改数组里面的内容的方法)