continue用于跳过当前循环剩余代码,直接执行更新语句并判断循环条件;for中满足条件时跳过后续代码,执行i++后重新判断i
continue 用于立即终止当前循环体的剩余执行,跳转到循环条件判断处,开始下一次迭代。
在 for 循环中使用 continue
当满足某个条件时,跳过本次循环后续代码,直接执行 for 的“更新语句”(如 i++),再重新判断循环条件。
- 例如:遍历数组,跳过所有负数,只打印非负数
}
遇到负数时,continue 会让程序跳过 println,直接执行 i++,然后检查 i 是否仍成立。
在 while 和 do-while 中使用 continue
在 while 中,continue 会跳过剩余语句,直接回到 while 条件判断;在 do-while 中,则跳至 while 后的条件检查。
- 注意:必须确保循环变量在 continue 前已被更新,否则可能陷入死循环
while (i if (i == 2) {
i++; // 必须先更新,再 continue
continue;
}
System.out.print(i + " ");
i++;
}
输出为:0 1 3 4 —— 跳过了 i=2 时的打印,但没跳过 i 的递增逻辑。
立即学习“Java免费学习笔记(深入)”;
当用户要求为 Java 代码添加注释、修改注释、审查注释、整理注释格式,或要求按照代码注释规范处理 Java 文件时,使用本技能。本技能用于统一生成和维护 Java 类注释模板、按 Git 对比 release 判断版本号、补充每行代码上方中文块注释、调整注释空行规则,并保持 Java 文件 UTF-8 无 BOM 编码。典型触发场景包括:补充类注释、更新 @version、检查 @author 来源、整理行尾注释、把注释放到代码上一行、检查注释是否符合规范、构建前检查 Java 注释风格。
配合标签实现多层循环中的精确跳转
默认 continue 只影响最近的内层循环。若需跳过外层某次迭代,可配合标签使用。
- 标签名后跟冒号,放在循环语句前
- continue 后加标签名,表示跳转到该标签所在循环的下一次判定
System.out.println("i=" + i + ", j=" + j);
}
}
当 i=1、j=1 时,continue outer 会结束整个内层循环,直接进入外层 for 的下一轮(i=2)。
与 break 的关键区别
continue 不退出循环,只是跳过当前轮;break 则彻底终止当前循环(或指定标签的循环)。
- continue → 回到条件判断,尝试下一次迭代
- break → 跳出循环体,执行循环之后的语句
误用 break 替代 continue 容易导致逻辑中断;反之,该退出时只用 continue 会造成无限循环风险。

















