首先请原谅我的新手问题。我正在学习Objective C,对编程本身也很陌生。
你能解释一下导致休息或继续循环的原因吗?
例如,两个代码有什么区别?
for (int i=0; i<100; i++) {
if ([self okToProceed]) {
[self doSomething];
} else {
break;
}
}
和
for (int i=0; i<100; i++) {
if ([self okToProceed]) {
[self doSomething];
} else {
continue;
}
}
第一个代码是第一次停止循环,okToProceed第一次返回false而第二个循环只是继续运行,但是当okToProceed为false时什么都不做?
答案 0 :(得分:21)
break
语句退出循环。
您可以将其视为创建循环退出条件的一种方法。
例如,在您的代码中:for(int i=0; i<100; i++)
,i<100
是一个循环条件
如果不满足这个条件,循环将退出。
同样,如果您有类似if(i == 34) { break; }
的内容,请在里面
即使指定的循环退出条件为i
,当i<100
的值达到34时,这将退出循环。
continue
语句用于跳到下一个循环周期
该语句用于基本上避免在循环中运行其余代码。
示例:
for(i=0; i<5; i++) {
if(i == 3) {
continue;
}
print(i);
}
此循环将打印0 1 2 4
当i
为3时,continue
将跳转到下一个循环迭代,continue
之后的语句(即print(i);
将不会执行)。
当然,在循环运行之前检查循环条件。
答案 1 :(得分:7)
break
将完全退出循环,continue
将跳过当前迭代并继续下一个循环。
例如在你的循环中,假设i
等于50并且你放break
循环将退出循环但是如果你使用continue
它将跳过这个迭代它将开始下一个 - i
将等于51。