Iphone 多重循环处理

Iphone 多重循环处理,iphone,ios,objective-c,for-loop,break,Iphone,Ios,Objective C,For Loop,Break,“我正在使用两个循环来表示另一个循环内部的循环。在最内部的循环中,我正在检查一个‘如果条件’如果条件满足,则整个循环我的意思是内部循环和外部循环都应该停止。但此时,下面的代码只能停止内部循环。外部循环没有停止。请给我解决方案。” for(int i=0;iBOOL isFound=NO; 对于(int i=0;i您可以对enumerationBlocks执行相同的操作。这假设您有一个数组数组 __block BOOL containsDress = NO; [a_AllClothing enum

“我正在使用两个循环来表示另一个循环内部的循环。在最内部的循环中,我正在检查一个‘如果条件’如果条件满足,则整个循环我的意思是内部循环和外部循环都应该停止。但此时,下面的代码只能停止内部循环。外部循环没有停止。请给我解决方案。”

for(int i=0;i
BOOL isFound=NO;

对于(int i=0;i您可以对enumerationBlocks执行相同的操作。这假设您有一个数组数组

__block BOOL containsDress = NO;
[a_AllClothing enumerateObjectsUsingBlock:^(NSArray * clothes, NSUInteger idx, BOOL *firstStop) {
    [clothes enumerateObjectsUsingBlock:^(NSString * cloth, NSUInteger idx, BOOL *seconStop) {
        if ([cloth isEqualToString:l_dressName]) {
            *firstStop = YES;
            *seconStop = YES;
            containsDress = YES;
        }
    }];
}];

你是第一个sem CS学生吗?你应该阅读“让我们C”甚至+2级计算机科学书籍。使用
condition(s)
在外循环中,您也有“goto”的功能,但不要经常使用。先生,我只是想知道是否有其他技术,而不是使用布尔值。在java中,您已经标记了loop,在C/Obj-C中,您需要使用
BOOL
或将整个代码重构为一个方法,在最内部的
中,如果
您可以se
return
。使用
goto
来打破循环是完全有效的。你确定吗?再读一遍代码。把这个读错了。不管怎样,它仍然只是一个代码转储,而不是一个应答。噢,读错了。+1
BOOL isFound = NO;
for(int i=0; i<a_AllClothing.count && !isFound;i++)
            {

                for (int j=0; j<tempAsset_array.count; j++) {

                    if([l_dressName rangeOfString:ImageName].location!=NSNotFound)
                    {
                        NSLog(@"Matched");
                        isFound = YES;

                        break;
                    }
                }
            }
__block BOOL containsDress = NO;
[a_AllClothing enumerateObjectsUsingBlock:^(NSArray * clothes, NSUInteger idx, BOOL *firstStop) {
    [clothes enumerateObjectsUsingBlock:^(NSString * cloth, NSUInteger idx, BOOL *seconStop) {
        if ([cloth isEqualToString:l_dressName]) {
            *firstStop = YES;
            *seconStop = YES;
            containsDress = YES;
        }
    }];
}];