Java的for语句中break, continue和return的区别
编辑: 面试啦 发布时间: 2023-11-23 05:35:40
使用break 退出循环 可以使用break 语句直接强行退出循环,忽略循环体中任何其他语句和循环条件测试。在循环中遇到break语句时,循环被终止,程序控制在循环后面语句重新开始。例如 如果for 循环被设计为从 0执行到99,然后输出0到99这些数字,但是当i等于10时,break语句终止程序。所以程序只会输出0到10。 在一系列嵌套循环中使用break 语句时,它将仅仅终止最里面循环。
而continue则停止执行当前的反复,然后退回循环起始和,开始新的反复。continue 用于跳过循环体中的一部分语句,也就是不执行这部分语句
return语句用来明确地从一个方法返回。也就是,return 语句使程序控制返回到调用它方法。因此,将它分类为跳转语句。尽管对return 语句详细讨论在第 7 章开始,这里对其作简要地介绍。在一个方法任何时间,return 语句可被用来使正在执行分支程序返回到调用它方法。下面例子说明这一点。下例中,由于是Java 运行系统调用main() ,因此,return语句使程序执行返回到Java 运行系统。 // Demonstrate return. class Return { public static void main(String args[]) { boolean t = true; System.out.println(“Before the return.”); if(t) return; // return to caller System.out.println(“This won’t execute.”); } } 该程序结果如下: Before the return. 正如你看到一样,最后println( ) 语句没有被执行。一旦return语句被执行,程序控制传递到它调用者。 最后一点:在上面程序中,if(t)语句是必要。没有它,Java 编译器将标记“执行不到代码”(unreachable code )错误,因为编译器知道最后println ()语句将永远不会被执行。为阻止这个错误,为这个例子能够执行,在这里使用if语句来“蒙骗”编译器。
而continue则停止执行当前的反复,然后退回循环起始和,开始新的反复。continue 用于跳过循环体中的一部分语句,也就是不执行这部分语句
return语句用来明确地从一个方法返回。也就是,return 语句使程序控制返回到调用它方法。因此,将它分类为跳转语句。尽管对return 语句详细讨论在第 7 章开始,这里对其作简要地介绍。在一个方法任何时间,return 语句可被用来使正在执行分支程序返回到调用它方法。下面例子说明这一点。下例中,由于是Java 运行系统调用main() ,因此,return语句使程序执行返回到Java 运行系统。 // Demonstrate return. class Return { public static void main(String args[]) { boolean t = true; System.out.println(“Before the return.”); if(t) return; // return to caller System.out.println(“This won’t execute.”); } } 该程序结果如下: Before the return. 正如你看到一样,最后println( ) 语句没有被执行。一旦return语句被执行,程序控制传递到它调用者。 最后一点:在上面程序中,if(t)语句是必要。没有它,Java 编译器将标记“执行不到代码”(unreachable code )错误,因为编译器知道最后println ()语句将永远不会被执行。为阻止这个错误,为这个例子能够执行,在这里使用if语句来“蒙骗”编译器。
上一篇:类的核心特性有哪些 下一篇:super()与this()的区别
面试题库导航
- C++面试题
- JAVA面试题
- Oracle面试题
- MySQL面试题
- Linux面试题
- 网络工程师面试题
- 网管面试题
- 软件工程师面试题
- PHP面试题
- .net面试题
- 软件测试面试题
- EJB面试题
- Spring面试题
- Javascript面试题
- Python面试题
- QTP面试题
- Servlet面试题
- J2EE面试题
- Database面试题
- ASP面试题
- Unix面试题
- Loadrunner面试题
- 通信面试题
- 嵌入式面试题
- Ruby面试题
- Delphi面试题
- Mobile开发面试题
- SOA面试题
- JAVA面试题面试题
- 研发工程师面试题
- 软件架构师面试题
- 系统工程师面试题
- Android面试题
- JAVA程序员
- C#面试题