continue是我们经常使用的控制语句之一。它通常用于在某些条件的基础上跳过当前迭代,开始下一次迭代。
continue
我们通过一个示例来理解它。
示例: 打印数组1到10中的奇数。 当我们遍历该数组时,如果我们得到一个偶数,程序将跳过该迭代,因此循环将不打印偶数。
package org.loop;
public class ContinueDemo {
public static void main(String[] args) {
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 == 0) {
continue;
}
System.out.print(" " + arr[i]);
}
}
}
程序运行后显示结果如下:
1 3 5 7 9
标签 continue
标签 continue是来中断内部迭代以及外部迭代,直接转到标签处;随后从标签处开始继续迭代过程。
示例: 假设有一个只包含0和1的二维数组矩阵。如果某行从1开始,则跳过该行。
package org.loop;
public class LabeledContinueDemo {
public static void main(String[] args) {
int[][] arr = { { 1, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 }, { 0, 1, 1 } };
outer: for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
if (arr[i][0] == 1) {
System.out.println("Skipping row " + i + " as it started with 1");
continue outer;
}
System.out.print(" " + arr[i][j]);
}
System.out.println();
}
}
}
上面示例代码运行后显示结果如下:
Skipping row 0 as it started with 1
0 0 0
Skipping row 2 as it started with 1
0 1 1