return, break and continue

最近学习多线程看到了一个描述不太准确的地方,让我对return break continue个语句的不同开始详细了解了一番,之前只是知道怎么使用,不是很深入研究,基本遇到了跳出就用return来解决全部问题。

代码:

 1 public class Test {
 2    public static void main(String[] args) {
 3       try {
 4          Mythread mythread=new Mythread();
 5          mythread.start();
 6          Thread.sleep(1000);
 7          mythread.interrupt();
 8       } catch (InterruptedException e) {
 9          e.printStackTrace();
10       }
11    }
12 }
13
14 class Mythread extends Thread{
15    public void run(){
16       super.run();
17       for(int i=0;i<500000;i++){
18          if(this.interrupted()){       //判断线程是否停止
19             System.out.println("STOP!!");
20             break;
22          }
23          System.out.println("i= "+(i+1));
24       }
25       System.out.println("END!!!");
26    }
27 }

在看这段代码的时候是这样解释的:虽然停止了线程,但是如果for之后还有语句,还是会继续运行的。让我错误的理解为在这里使用break的时候会线程先退出了,然后又重启了。显然这样的理解是不对的,应该是break只是退出了这个for循环语句,线程继续执行直到这个方法结束。

首先,return:

return这个语句是作为返回的语句,将函数或者方法的值返回给主调函数,然后改函数执行结束。

比如:

1 for(int i=0;i<500000;i++){
2          if(i==1){
3             System.out.println("STOP!!");
4             return 0;
5          }
6          System.out.println("i= "+(i+1));
7       }

这里返回值为0,当i的值为1的时候输出了STOP并且这个函数/方法的返回值为0,然后这个函数就停止执行,return语句直接跳出就跳出了函数,包括函数中的方法。

之后就是 break

break一般作为条件分之或者循环的跳出语句,使程序跳出循环执行之后的继续执行之后的程序。

比如第一个程序中使用的break,程序的for循环遇到线程停止的结果的时候会执行break语句,然后跳出这个for循环,之后继续执行这个方法中之后的语句,知道之后的代码运行完成之后。

最后一个是continue语句

这个语句我使用的很少,基本没有用到过,这个语句就是跳过循环一次继续执行这个,这个应该很好想了。

=========================================

时间: 2024-10-24 12:44:07

return, break and continue的相关文章

break、continue、return的使用

跳转控制语句: java中的goto是保留字,目前不能使用,虽然没有了goto语句可以增强程序的安全性,但是也带来很多不便. 比如说:我们想让某个循环到某一步的时候就结束,现在就做不了这个事情了.为了弥补这个缺陷,Java就提供了break,continue,return来实现控制语句的跳转和中断. break 中断 continue 继续 return 返回 三者的区别: 1. 跳转控制语句(break) 1.1 break的使用场景: 1.1.1在选择结构switch语句中         

return、break、continue的区别

一.定义 return:语句用于终止当前方法运行,返回到调用该方法的语句处.如有返回值,则在return后面提供相应的返回值. break:其主要用于循环语句和switch语句,其作用均是强行终止语句的执行. continue:主要用于循环语句中,作用是跳过本次循环,继续执行下一次. 二.区别 从定义中可看出,return与break.continue的区别较大,return的作用范围是在一个方法内,其终止的是方法的运行,而break与continue终止的是循环或者switch语句的执行,br

break、continue、return几个关键字的使用

break break的作用是跳出当前循环块(for.while.do while)或程序块(switch).在循环块中的作用是跳出当前正在循环的循环体.在程序块中的作用是中断和下一个case条件的比较. 实例 public class Exam1 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int cut; int num = 1; System.out.println("

关于break、continue和return

在Java语言中,有一些跳转的语句,如break.continue以及return等,都是用来控制程序的流程转向的,适当灵活地使用它们可以更加方便进行程序开发.--<Java从入门到精通> 一.break语句 是什么?break用于终止循环,执行循环之后的语句 为什么?提前结束所有循环,提高程序的运行效率 怎么办?break既可以用于switch结构中,也可以用于while.do-while.for等循环语句中 demo public class demo1 { public static v

从头认识java-3.2 return break continue

这一章节我们来说说return break continue直接的相同与不同. 1.相同 都是跳出循环. package com.ray.ch03; public class Test { public static void main(String[] args) { System.out.println("-------with break-------"); for (int i = 0; i < 10; i++) { if (i == 5) { break; } Syst

php exit、return、break、continue之间的区别,详细介绍

相信大家在php开发中有几个常用的停止程序和循环的关键字的误区( exit.return.break.continue) exit 退出所有脚本,是个函数 return 语言结构的用法---作用:终止函数的执行和从函数中返回一个值 break 结束当前 for,foreach,while,do..while 或者 switch 结构的执行(break 可以接受一个可选的数字参数来决定跳出几重循环) continue 在循环结构中用来跳过本次循环中剩余的代码并开始执行本循环结构的下一次循环.( 接

Linux shell break、continue、exit、return的用法

break.continue.exit.return一般用于控制循环的的走向 首先通过一个脚本说明 for ((i=1;i<5;i++ )) do if [ $i -eq 3 ] then #  break #  continue #  exit fi echo $i done echo OK 输出的结果 break的结果 1 2 OK continue的结果 1 2 4 OK exit的结果 1 2 由此可以说明 break n:n表示跳出循环的层数,如果省略n表示跳出整个循环 continu

04-01 Java switch、for、while、do while语句,循环嵌套,跳转语句break、continue、return

语句 1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n+1; break; } 格式解释说明: switch:说明这是switch语句. 表达式:可以是byte,short,int,char JDK5以后可以是枚举 JDK7以后可以是字符串 case:后面的值就是要和表达式进行比较的值 break:表示程序到这里中断,跳出switch语句 defaul

break、continue、return之间的区别与联系

break.continue.return之间的区别与联系 在软件开发过程中,逻辑清晰是非常之重要的. 代码的规范也是非常重要的.往往细节决定成败.在编写代码的时候,一定要理解语言的作用以及使用的方法和场景.下面来介绍一下break.continue.return三者的区别和联系. 1. break : (1).结束当前整个循环,执行当前循环下边的语句.忽略循环体中任何其它语句和循环条件测试. (2).只能跳出一层循环,如果你的循环是嵌套循环,那么你需要按照你嵌套的层次,逐步使用break来跳出