概述

存在至少2层for循环,根据外层的条件,判断里层能否执行
如果能执行,就把里层代码都循环完毕后,再继续判断是否执行外层循环的下一次循环

嵌套for形式

image.png

练习:嵌套for循环入门案例

总结1:外循环执行1次,内循环执行多次
总结2:外循环控制行,内循环控制列

package cn.tedu.basic;
/**本类用于测试嵌套for循环*/
public class TestForDemo {
    public static void main(String[] args) {
        /**总结1:外层循环执行1次(控制轮数),内层循环执行多次(在每轮中执行的次数)*/
        //外层循环打印1 2 3
        for (int i = 1; i < 4 ; i++) {//外层循环控制的是执行的轮数,循环3次,执行3轮
            System.out.println("外层"+i+"轮");
            //内层循环打印1 2 3 4 5
            for (int j = 1; j < 6; j++) {//内层循环控制的是每轮执行的次数,循环5次,每轮执行5次
                System.out.println("内层循环第"+j+"次");
            }
        }
       
        System.out.println("****************打印矩形*********************************");
        for (int i = 1; i <=3; i++) {
            for (int j = 1; j <=5; j++) {
                System.out.print("*");
            }
            System.out.println();//空白行用来换行
        }
       
    }
}

练习:打印左直角三角形

package cn.tedu.basic;
/**需求:利用for循环,打印左直角三角形*/
//行1星1 *
//行2星2 * *
//行3星3 * * *
//行4星4 * * * *
//行i星i * * * * *
public class TestForTriangle {
    public static void main(String[] args) {
        for(int i = 1;i<6;i++) {//外循环
            for (int j = 1; j <=i; j++) {//内循环
                //注意:需要修改内循环的循环条件,让j的最大值随着i改变,否则写死了
                System.out.print("*");//在同一轮/同一行打印不换行
            }
            System.out.println();//空白行用来换行
        }
    }
}

练习:打印99乘法表

package cn.tedu.basic;
/**本类用于测试完成99乘法表*/
//1*1=1	
//1*2=2	2*2=4	
//1*3=3	2*3=6	3*3=9	
//1*4=4	2*4=8	3*4=12	4*4=16	
//1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
//1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
//1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
//1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
//1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	
public class TestFor99Excel {
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {//控制行数,打印9行
            for (int j = 1; j <= i; j++) {//控制列数,i行打印i列
                //System.out.println("*");--打印左直角三角形
                //System.out.println("2*3=6");2--i 3--j 6--i*j
            	//拼接打印算式,后面拼接一个"\t"表示这是表格格式,\t也被称作制表符
                System.out.print(j+"*"+i+"="+(i*j)+"\t");
            }
            System.out.println();//空白行用来换行
        }
    }
}

Q.E.D.


努力成就未来