我第一次看到这个关键字,我想知道是否有人可以向我解释它是做什么的。

continue关键字是什么? 它是如何工作的? 什么时候使用?


当前回答

Continue是Java中的关键字,用于跳过当前迭代。

假设您想打印从1到100的所有奇数

public class Main {

    public static void main(String args[]) {

    //Program to print all odd numbers from 1 to 100

        for(int i=1 ; i<=100 ; i++) {
            if(i % 2 == 0) {
                continue;
            }
            System.out.println(i);
        }

    }
}

上面程序中的Continue语句只是在I为偶数时跳过迭代,当I为奇数时打印I的值。

语句只是将您带出循环,而不执行循环内的其余语句,并触发下一次迭代。

其他回答

"continue"在Java中的意思是走到当前循环的结束, 意味着:如果编译器在一个循环中看到continue,它将进入下一个迭代

示例:这是一个输出从1到10的奇数的代码

编译器将忽略打印代码,只要它看到继续进入下一个迭代

for (int i = 0; i < 10; i++) { 
    if (i%2 == 0) continue;    
    System.out.println(i+"");
}

continue必须在循环内,否则会显示如下错误:

继续到循环之外

不带标签的continue语句将从最里面的while或do循环的条件和最里面的for循环的更新表达式重新执行。它通常用于提前终止循环的处理,从而避免深度嵌套的if语句。在下面的例子中,continue将获取下一行,而不处理循环中的下面语句。

while (getNext(line)) {
  if (line.isEmpty() || line.isComment())
    continue;
  // More code here
}

使用标签,continue将从带有相应标签的循环中重新执行,而不是从最内层的循环中执行。这可以用来转义嵌套很深的循环,或者只是为了清晰。

有时,continue也被用作占位符,以使空循环体更清晰。

for (count = 0; foo.moreData(); count++)
  continue;

在C和c++中也存在相同的没有标签的语句。接下来是Perl中的等效程序。

这种类型的控制流是不推荐的,但是如果你这样选择,你也可以使用继续来模拟有限形式的goto。在下面的例子中,continue将重新执行空的for(;;)循环。

aLoopName: for (;;) {
  // ...
  while (someCondition)
  // ...
    if (otherCondition)
      continue aLoopName;

如果你把循环体看作子程序,continue就有点像return。同样的关键字在C中也存在,而且用途相同。这里有一个人为的例子:

for(int i=0; i < 10; ++i) {
  if (i % 2 == 0) {
    continue;
  }
  System.out.println(i);
}

这将只打印奇数。

Continue是Java中的关键字,用于跳过当前迭代。

假设您想打印从1到100的所有奇数

public class Main {

    public static void main(String args[]) {

    //Program to print all odd numbers from 1 to 100

        for(int i=1 ; i<=100 ; i++) {
            if(i % 2 == 0) {
                continue;
            }
            System.out.println(i);
        }

    }
}

上面程序中的Continue语句只是在I为偶数时跳过迭代,当I为奇数时打印I的值。

语句只是将您带出循环,而不执行循环内的其余语句,并触发下一次迭代。