Java中循环语句的控制

循环结构的控制语句

 1,break语句

 2,continue语句

 3,return语句

1.break语句

在Java中,我们可以通过一些语句,比如break,continue,return来控制循环语句的执行;

break语句是终止当前的循环结束,后续的循环也结束

下面举例子

package Hello;

public class xunhuan {
    public static void main(String[] args) {
	for(int i=1;i<10;i++){
	    for(int j=1;j<10;j++){
		System.out.print("i="+i+" j="+j+" ");
	    }
	    System.out.println();
	}
    }
}

输出结果为:

i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9 
i=2 j=1 i=2 j=2 i=2 j=3 i=2 j=4 i=2 j=5 i=2 j=6 i=2 j=7 i=2 j=8 i=2 j=9 
i=3 j=1 i=3 j=2 i=3 j=3 i=3 j=4 i=3 j=5 i=3 j=6 i=3 j=7 i=3 j=8 i=3 j=9 
i=4 j=1 i=4 j=2 i=4 j=3 i=4 j=4 i=4 j=5 i=4 j=6 i=4 j=7 i=4 j=8 i=4 j=9 
i=5 j=1 i=5 j=2 i=5 j=3 i=5 j=4 i=5 j=5 i=5 j=6 i=5 j=7 i=5 j=8 i=5 j=9 
i=6 j=1 i=6 j=2 i=6 j=3 i=6 j=4 i=6 j=5 i=6 j=6 i=6 j=7 i=6 j=8 i=6 j=9 
i=7 j=1 i=7 j=2 i=7 j=3 i=7 j=4 i=7 j=5 i=7 j=6 i=7 j=7 i=7 j=8 i=7 j=9 
i=8 j=1 i=8 j=2 i=8 j=3 i=8 j=4 i=8 j=5 i=8 j=6 i=8 j=7 i=8 j=8 i=8 j=9 
i=9 j=1 i=9 j=2 i=9 j=3 i=9 j=4 i=9 j=5 i=9 j=6 i=9 j=7 i=9 j=8 i=9 j=9 

 假如现在需要把i=2的这一行不输出,这时我们可以用break结束当前循环

package Hello;

public class xunhuan {
	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			for(int j=1;j<10;j++){
				if(i==2){
					break;
				}
				System.out.print("i="+i+" j="+j+" ");
			}
			System.out.println();
		}
	}
}

当i=1时,break结束整个内层循环,直接执行外层循环

输出结果为:

i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9 

i=3 j=1 i=3 j=2 i=3 j=3 i=3 j=4 i=3 j=5 i=3 j=6 i=3 j=7 i=3 j=8 i=3 j=9 
i=4 j=1 i=4 j=2 i=4 j=3 i=4 j=4 i=4 j=5 i=4 j=6 i=4 j=7 i=4 j=8 i=4 j=9 
i=5 j=1 i=5 j=2 i=5 j=3 i=5 j=4 i=5 j=5 i=5 j=6 i=5 j=7 i=5 j=8 i=5 j=9 
i=6 j=1 i=6 j=2 i=6 j=3 i=6 j=4 i=6 j=5 i=6 j=6 i=6 j=7 i=6 j=8 i=6 j=9 
i=7 j=1 i=7 j=2 i=7 j=3 i=7 j=4 i=7 j=5 i=7 j=6 i=7 j=7 i=7 j=8 i=7 j=9 
i=8 j=1 i=8 j=2 i=8 j=3 i=8 j=4 i=8 j=5 i=8 j=6 i=8 j=7 i=8 j=8 i=8 j=9 
i=9 j=1 i=9 j=2 i=9 j=3 i=9 j=4 i=9 j=5 i=9 j=6 i=9 j=7 i=9 j=8 i=9 j=9 

我们发现i=2的这行并没有输出

break标签

break 还有一个break标签 我们可以从内层跳到外层,并结束外层循环;

比如我们只需要输出第一行  我们时候可以用标签实现:

package Hello;

public class xunhuan {
	public static void main(String[] args) {
		out:
		for(int i=1;i<10;i++){
			for(int j=1;j<10;j++){
				if(i==2){
					break out;
				}
				System.out.print("i="+i+" j="+j+" ");
			}
			System.out.println();
		}
	}
}

break直接跳到外层循环,并且结束外层循环的结果;

输出结果为:

i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9 

2.continue语句

continue是跳过当前循环,直接执行后续的循环

假如在输出1-10的数字时,如果想去掉5和8的话,就可以用continue语句;

package Hello;

public class test {

	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			if(i==5||i==8){
				continue;
			}
			System.out.print(i+" ");
		}
	}
}

输出结果为:

1 2 3 4 6 7 9 

如果此处改为break,break是结束后续循环

package Hello;

public class test {

	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			if(i==5||i==8){
				break;
			}
			System.out.print(i+" ");
		}
	}
}

结果为: 

1 2 3 4 

读者可以体会一下break与continue的区别

3.return语句

return语句是直接结束整个程序的运行

package Hello;

public class test {

	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			if(i==5||i==8){
				break;
			}
			System.out.print(i+" ");
		}
		System.out.println("运行到这里");
	}
}

这是break语句的结束后续循环,但是并没有结束整个程序的运行,程序一直运行到for循环外面

结果为:

1 2 3 4 运行到这里

而return语句是结束整个程序的运行

package Hello;

public class test {

	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			if(i==5||i==8){
				return;
			}
			System.out.print(i+" ");
		}
		System.out.println("运行到这里");
	}
}

return语句直接终止程序的运行

其结果为:

1 2 3 4 

for循环外面的程序也被终止

读者可以体会一下return和break的区别 

猜你喜欢

转载自blog.csdn.net/qq_37084904/article/details/82916878