Java 嵌套循环

时间:2019-01-17
本文章向大家介绍Java 嵌套循环,主要包括Java 嵌套循环使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

嵌套循环(在循环内部又使用循环)

内循环可以使用外循环的变量

一般嵌套两层就能解决大部分问题了

经典案例:九九乘法表

package project1;

public class test3 {

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

	}

}

 

label标签的使用

可以使用break或continue使程序跳转到这个标签执行处,从而改变程序的执行流程

package project1;

public class test4 {

	public static void main(String[] args) {
		
		for(int i=0;i<10;i++) {
			for(int j=0;j<10;j++) {	
					break;	//break会跳出当前里面的for循环
			}
		}		

	}

}
package project1;

public class test4 {

	public static void main(String[] args) {
		
		for(int i=0;i<10;i++) {
			for(int j=0;j<10;j++) {	
					if(i+j==6) {
						System.out.println(j);
						break;
					}
			}
			System.out.println(i);
		}
		
	}

}

//输出结果:
6
0
5
1
4
2
3
3
2
4
1
5
0
6
7
8
9

 

package project1;

public class test4 {

	public static void main(String[] args) {
		
		a: for(int i=0;i<10;i++) {   //当里面for中的if满足条件时,a标签就终止整个大for循环
			for(int j=0;j<10;j++) {	
					if(i+j==6) {
						System.out.println(j);
						break a;
					}
			}
			System.out.println(i);
		}
		
	}
}
	b: {
			System.out.println("b");
			int num = 10;
			if (num < 11) {
				System.out.println(num);
				break b;
			}
			System.out.println("B"); //break b;会跳出整个b{...}大括号,所以本句不会执行
		}
		/*
		 * 输出结果: 
		 * b
		 * 10
		 */
	/*
	 * 单独的continue;是终止本次小循环开始下一次小循环。如果是continue a; 那么就跳到外面大的a:处 
       开始执行
	 */
			a: for(int i=0;i<10;i++) {   //当里面for中的if满足条件时,a标签就终止整个大for循环
				for(int j=0;j<10;j++) {	
						if(i+j==6) {
							System.out.println(j);
							continue a;
						}
				}
				System.out.println(i);
			}
a: for(int i=0;i<10;i++) {   //当里面for中的if满足条件时,a标签就终止整个大for循环
	for(int j=0;j<10;j++) {	
			if(i+j==6) {
				System.out.println(j);
				continue a;
			}
	}
	System.out.println(i);
}

//上面这个例子中把continue a;换成 break a;的区别是
//continue a;的情况中continue a;直接跳出大a:范围,不会执行System.out.println(i);这句话,
//如果是break a;的情况 break a;会跳出小for循环,但最后一句System.out.println(i);还是会执行的