目录
多重循环(嵌套循环)
1、多重循环的概念
在一次循环中,每次的循环内容(循环体)又是一个复杂的操作,是重复的操作,就需要在大循环中,定义一个小循环。称为循环的嵌套。
格式:
for (初始化语句1; 条件表达式1; 初始化变量1的自增) {
for ( 初始化语句2 ; 条件表达式2 ; 初始化变量2的自增 ) {
循环体语句;
}
}
执行流程:
1、初始化语句1
2、判断条件表达式1,计算如果为false,外层循环结束
3、判断条件表达式1,计算如果为true,初始化语句2
4、计算条件表达式2,计算结果为false,内循环结束,执行初始化变量1的自增,回到第2步
5、计算条件表达式2,计算结果为true,执行循环体语句,
6、执行初始化变量2的自增,回到第4步
二、案例
案例1:输出图形
*
***
*****
*******
*********
/*
*
***
*****
*******
*********
规律:
行数:1 2 3 4 5 i
星数:1 3 5 7 9 2*i-1
*/
public class ForDemo01 {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for (int j = 1;j <= 2*i-1;j++){
System.out.print("*");
}
System.out.println();
}
}
}
案例2:输出图形
/*
*
* *
* * *
* * * *
* * * * *
规律:
行数:1 2 3 4 5 i
星数:1 2 3 4 5 i
每个*后面有一个空格
*/
public class ForDemo02 {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for(int j = 1;j <= i;j++){
if (j==i){
System.out.println("*");
break;
}
System.out.print("* ");
}
System.out.println();
}
}
}
案例3:输出99乘法表
/*
输出99乘法表
*/
public class ForDemo03 {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1;j <= i;j++){
// 判断是不是最后一列,如果是,执行if语句
if (j == i){
System.out.println(j+"*"+i+"="+(j*i));
break;
}
System.out.print(j+"*"+i+"="+(j*i)+"\t");
}
System.out.println();
}
}
}