第32月第12天 block stop

1.

- (NSMutableArray *)filterUsingBlock:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))block
{
    if (!block) {
        return [self mutableCopy];
    }
    
    NSMutableArray *result = [NSMutableArray array];
    NSUInteger idx = 0;
    BOOL stop = NO;
    
    for (id obj in self) {
        if (block(obj, idx, &stop)) {
            [result addObject:obj];
            
            if (stop) {
                break;
            }
        }
        
        idx++;
    }
    
    return result;
}

猜你喜欢

转载自www.cnblogs.com/javastart/p/10853673.html