中断控制流程语句:break、continue
2017-08-07 17:51
417 查看
流程语句在我们开发过程中经常用到,我们常用到的流程语句有if、for、while、do while、swith等。
在这些流程当中,有时候我们需要跳出流程,所以需要用到中断流程的语句,特别是多流程嵌套时,更容易用到。
中断流程语句,java中常用的是break、带标签的break和continue。
下面就举几个简单地实例,来记录下这些语句的用法。
案例一:简单地break
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//break
while(i < 10){
k += i;
System.out.println("break之前 i:" + i + " " + "k:" + k);
if(k > 10) break;
System.out.println("break之后 i:" + i + " " + "k:" + k);
i++;
k++;
}
}
}
这是一个简单地单循环语句,显而易见,当k>10时,会跳出该循环,不在执行后面代码。
那么既然有单循环语句,就不会有嵌套循环语句以及判断语句,古人云,言多必失,代码也是一样,越复杂,就越容易出错,所以控制流程语句嵌套很深的时候,在某种特定的情况下我们需要跳出所有控制流程,那么问题来了,JAVA支持吗?
显而易见,是支持的,这里我们就需要用到带标签的break
案例二:带标签的break
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//break break_data
break_data:
while(i < 10){
k += i;
System.out.println("break之前 i:" + i + " " + "k:" + k);
if(k < 100){
System.out.println("进入k < 100循环");
if(i+k > 20){
System.out.println("进入i+k > 20循环");
break break_data;
}else{
System.out.println("进入i+k > 20 的 else 循环");
}
}else{
System.out.println("进入k > 100 的 else 循环");
};
System.out.println("break之后 i:" + i + " " + "k:" + k);
i++;
k++;
}
}
}
break的标签就是:break_data,注意,这里的break_data后面一定要加“:”号。
当i+k >20的时候,就会跳出所有循环,然后执行循环外的代码。
案例三:continue
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//continue
for (int j = 0; j < 20; j++) {
System.out.println("==========================================");
System.out.println("i:" + i + " " + "j:" + j);
if(j < 5) continue;
System.out.println("i:" + i + " " + "j:" + j);
j += i;
i++;
}
}
}
continue语句将控制转移到了最内层循环的首部,即当j<5时,continue语句会越过当前循环的剩余部分,直接跳到循环首部,例如本案例中j<5时,continue语句直接跳转到j++语句。
在这些流程当中,有时候我们需要跳出流程,所以需要用到中断流程的语句,特别是多流程嵌套时,更容易用到。
中断流程语句,java中常用的是break、带标签的break和continue。
下面就举几个简单地实例,来记录下这些语句的用法。
案例一:简单地break
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//break
while(i < 10){
k += i;
System.out.println("break之前 i:" + i + " " + "k:" + k);
if(k > 10) break;
System.out.println("break之后 i:" + i + " " + "k:" + k);
i++;
k++;
}
}
}
这是一个简单地单循环语句,显而易见,当k>10时,会跳出该循环,不在执行后面代码。
那么既然有单循环语句,就不会有嵌套循环语句以及判断语句,古人云,言多必失,代码也是一样,越复杂,就越容易出错,所以控制流程语句嵌套很深的时候,在某种特定的情况下我们需要跳出所有控制流程,那么问题来了,JAVA支持吗?
显而易见,是支持的,这里我们就需要用到带标签的break
案例二:带标签的break
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//break break_data
break_data:
while(i < 10){
k += i;
System.out.println("break之前 i:" + i + " " + "k:" + k);
if(k < 100){
System.out.println("进入k < 100循环");
if(i+k > 20){
System.out.println("进入i+k > 20循环");
break break_data;
}else{
System.out.println("进入i+k > 20 的 else 循环");
}
}else{
System.out.println("进入k > 100 的 else 循环");
};
System.out.println("break之后 i:" + i + " " + "k:" + k);
i++;
k++;
}
}
}
break的标签就是:break_data,注意,这里的break_data后面一定要加“:”号。
当i+k >20的时候,就会跳出所有循环,然后执行循环外的代码。
案例三:continue
package test.java;
/**
* 中断控制流程语句
* @author Tastill
*
*/
public class test3 {
//break
public static void main(String[] args) {
int i = 1;
int k = 1;
//continue
for (int j = 0; j < 20; j++) {
System.out.println("==========================================");
System.out.println("i:" + i + " " + "j:" + j);
if(j < 5) continue;
System.out.println("i:" + i + " " + "j:" + j);
j += i;
i++;
}
}
}
continue语句将控制转移到了最内层循环的首部,即当j<5时,continue语句会越过当前循环的剩余部分,直接跳到循环首部,例如本案例中j<5时,continue语句直接跳转到j++语句。
相关文章推荐
- java 控制流程 &枚举类型 enum 的用法 & 带标签的break语句 &continue语句
- SQL流程控制语句学习(三):while break continue
- JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结
- #笔记#圣思园 JavaSE 第7讲——流程控制语句 while、do while、for循环、break、continue
- JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结
- java中特殊的流程控制语句(break,continue,return)
- java学习之路 之 基本语法-特殊的流程控制语句(break、continue、return)
- JAVA流程控制语句(顺序语句、判断、选择判断语句、while循环、do while循环、for循环、break、continue关键字)
- linux基础(十九)----linux编程基础----linux循环控制语句----break中断和continue继续
- Shell学习笔记(12)-流程控制之break、continue语句
- linux基础(十九)----linux编程基础----linux循环控制语句----break中断和continue继续
- 程序流程控制_循环语句_break_continue
- java的选择结构switch和循环结构for while do while以及流程控制语句break continue return
- 其他的流程控制语句,break和continue
- Java SE ---控制流程:break与continue语句
- java程序流程控制,if语句,switch语句,while语句,do while语句,for 语句,break关键字,continue关键字
- Break,continue,return来实现控制语句的跳转和中断
- C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)
- 【Java学习笔记】04.流程控制语句与break,continue的使用
- 黑马程序员—Java语言基础(程序流程控制-if、switch、for、while、do while、break、continue)