请解释break并继续Objective-C

UFO*_*UFO 7 objective-c

首先请原谅我的新手问题.我正在学习Objective C,对编程本身也很陌生.

你能解释一下导致休息或继续循环的原因吗?

例如,两个代码之间有什么区别?

 for (int i=0; i<100; i++) {
      if ([self okToProceed]) {
         [self doSomething];
      } else {
         break;
      }
  }
Run Code Online (Sandbox Code Playgroud)

  for (int i=0; i<100; i++) {
      if ([self okToProceed]) {
         [self doSomething];
      } else {
         continue;
      }
  }
Run Code Online (Sandbox Code Playgroud)

第一次代码是否会在第一次okToProceed返回false时停止循环,第二次循环只是继续运行,但是当okToProceed为false时什么都不做?

myu*_*suf 22

一个break声明退出循环.
您可以将其视为创建循环退出条件的一种方法.

例如,在您的代码中:for(int i=0; i<100; i++),i<100是一个循环条件.
即如果不满足这个条件,循环将退出.

同样,如果你有类似内容,请在里面if(i == 34) { break; }.即使指定的循环退出条件为,
i达到34的值时,这将退出循环i<100.


一个continue语句用于跳到下一个循环周期.
此语句用于基本上避免在循环内运行其余代码.

例:

for(i=0; i<5; i++) {
   if(i == 3) {
      continue;
   }
   print(i);
}
Run Code Online (Sandbox Code Playgroud)

此循环将打印0 1 2 4.
i将是3,continue会跳到下一个循环迭代和之后的语句continue(print(i);不执行).
当然,在循环运行之前检查循环条件.


Gre*_*reg 8

break将完全退出循环,continue将跳过当前迭代并继续下一个循环.

例如,在你的循环中,假设i等于50并且你放置break循环将退出循环但是如果你使用continue它将跳过这个迭代它将开始下一个 - i将等于51.