continue、break、return三者的对比
一. break
作用
break关键字可以用于for、while、do-while及switch语句中,用来跳出整个语句块,结束当前循环的执行。另外我们要特别注意,break语句总是跳出自己所在的那一层循环。当两个for循环嵌套时,如果break语句位于内层的for循环,它只会跳出内层的for循环,但不会跳出外层的for循环。
语法
break的用法很简单,我们在之前学习switch时就已经使用过了。一般就是在循环或switch语句中编写如下一条语句:
break;
比如我们使用for循环计算从1累加到100的和时,在循环内部,我们可以使用if判断,当i==50就提前利用break关键字结束循环。因此,break经常会配合if语句使用。
3. 案例
3.1 案例一
break会跳出当前for循环。当break执行后,当前整个for循环都会结束执行。
public class Demo01 {
public static void main(String[] args) {
//break关键字
//需求:从1累加到100,找到累加到哪个数时,就使得sum和大于888
// 定义变量保存总和
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum = sum + i;
if (sum > 888) {
System.out.println("累加到"+i+"时,sum和就大于888");
// 结束当前循环
break;
//这里的语句执行不到,编译阶段就会报错
//System.out.println("能执行吗??");
}
//这里的语句可以执行,当break跳出循环后,就不会再继续执行
System.out.println("能执行吗??"+i);
}
}
}
大家要注意,我们不能直接在break后面跟着其他语句,否则在编译阶段就会出现”Unreachable code“,如下图所示:

3.2 案例二
需求:将输入的内容进行输出,如果输入"886"就结束当前聊天。
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
//break关键字
Scanner sc = new Scanner(System.in);
while(true){
String word = sc.next();
if(word.equals("886")){
//跳出当前循环
break;
}
//输出内容
System.out.println(word);
}
}
}
二. continue
作用
continue适用于各种循环结构中,不能用于其他地方,用于跳过本次循环,执行下一次循环。break可以跳出当前循环,即整个循环都不会执行了。而与break不同,continue是提前结束本次循环,但会继续执行下一次的循环。在多层嵌套的循环中,continue也可以通过标签指明要跳过的是哪一层循环,并且同样是只结束自己所在的循环。
2.语法
continue的用法很简单,在循环结构中直接使用如下语句即可:
continue;
案例
3.1 案例一
需求:输出100以内,所有不是3的倍数的整数。使用continue结束当前循环,继续下一次循环。
public class Demo03 {
public static void main(String[] args) {
//continue关键字
//案例:输出100以内,所有不是3的倍数的整数
for(int i = 1; i <= 100 ; i++){
if(i % 3 == 0){
//结束本次循环,继续执行下次循环,并不会结束整个循环,直到完成整个循环
continue;
}
System.out.println(i);
}
}
}
三. return
关于return关键字,今天先简单介绍以后,后面我们在学习Java的”方法“时会详细讲解!
作用
return并不是专门用来结束循环的关键字,它可以用来结束一个方法或循环。当一个方法执行到return语句时,该方法就会被结束。与break和continue不同的是,return是直接结束整个方法,不管这个return处在多少层的循环之内。
语法
return关键字的基本语法如下:
访问修饰符 返回值类型 方法名(参数...){
//方法体
//注意:这里返回值的类型必须与方法上声明的返回值类型一致!
return 返回值;
}
案例
因为return的用法,主要是和java里的”方法“有关系,所以壹哥在这里先简单给大家展示两个基本的案例,以后我们再详细学习方法和return的内容。
3.1 案例一
在方法中返回值指定类型的结果。
public class Demo05 {
public static void main(String[] args) {
// return关键字
//调用定义的方法,并获取返回结果
String result = sayHello();
System.out.println("result="+result);
}
//定义一个带有String类型返回值的方法
//访问修饰符 返回值类型
public static String sayHello() {
//本方法中只能返回String类型
return "Hello,壹壹哥!";
}
}
四. 区别
1.Java中return和break有什么区别
Java中的return和break都是控制程序流程的关键字,但它们的用途和作用不同。
return用于从一个方法中返回结果,并结束该方法的执行。当一个方法执行到return语句时,它会立即返回指定的结果并停止执行该方法。同时,return语句还可以用于抛出异常。
示例代码:
public int add(int x, int y) {
int sum = x + y;
return sum;
}
在上述代码中,return语句用于返回sum的值,从而结束add方法的执行。
break用于跳出循环或switch语句,即终止循环或switch语句的执行。当程序执行到break语句时,它会跳出当前的循环或switch语句,并继续执行后面的代码。
示例代码:
for (int i = 0; i < 10; i++) {
if (i == 5) {
break;
}
System.out.println(i);
}
在上述代码中,当i的值等于5时,程序执行到break语句,跳出循环并停止执行。因此,程序只会输出0到4的数字。
综上所述,return用于从方法中返回结果并结束方法的执行,而break用于跳出循环或switch语句,即终止循环或switch语句的执行。
2.break和continue语句在使用时的区别有哪些呢
在 Java 中,break 和 continue 都是控制流语句,用于控制循环结构的执行流程。它们的使用时机和作用是不同的,具体区别如下:
1.break:当执行到 break 语句时,会立即退出当前循环结构,不再执行循环体内余下的语句,同时继续执行循环结构之后的代码。break 通常用于结束循环,跳出循环。
2.continue:当执行到 continue 语句时,会立即跳过本次循环体内余下的语句,直接进入下一次循环判断。continue 通常用于结束本次循环,进入下一次循环。
下面是一个简单的示例,演示 break 和 continue 的使用区别:
// break 示例
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // 当 i == 5 时,跳出循环
}
System.out.println(i);
}
// continue 示例
for (int i = 1; i <= 10; i++) {
if (i == 5) {
continue; // 当 i == 5 时,跳过本次循环,进入下一次循环
}
System.out.println(i);
}
输出结果为:

可以看出,当 i == 5 时,break 立即结束循环,输出结果只有 1~4;而 continue 跳过本次循环,输出结果中缺少了 5,但循环仍然继续执行,输出了其他的数。
3.continue、break、return三者的对比
●break:结束所在的循环;
●continue:跳过本次循环,继续下一次循环;
●return:结束整个方法。

相关推荐HOT
更多>>
你需要深入了解一下JavaScript的new Function
JavaScript技术一直处于不断发展壮大中,如果你是前端开发人员或者JavaScript开发工程师,那么,今天这个知识点,你有必要认真了解一下,它就是...详情>>
2023-01-31 17:57:17
理解React Virtual DOM
文件模型(Document Object Model,DOM) HTML、XML 和 SVG 文件的程序介面。它提供了文件(树)的程序的文件表示方法,并定义了访问并改变文件架构...详情>>
2023-01-31 17:55:42
拿到就能用的25个JavaScript代码
JavaScript 有很多单行代码的实用例子,它们可以做很多强大的事情,无论你是 JavaScript 新手还是经验丰富的开发人员,学习些新东西总是好的。详情>>
2023-01-31 17:52:25
CSS字体和字号
在浏览器里验证一下,字体大小果然没有发生变化!除了em,还可以使用百分比 (%) 这个单位,它是相对于父元素的大小来计算文本尺寸的。比如定义 p...详情>>
2023-01-30 16:03:02