关于嵌套for{for{}}的关系
我们首先要理清一个执行的先后顺序,是从上往下的。
比方说 (1) 一个输出语句
(2)For(循环3次){
(3)一个输出语句
(4)For(循环2次){
(5)一个输出语句
}
(6)一个输出语句
}
(7)一个输出语句
上面的一个表达式,他的一个正确的一个顺讯应该是,
12345456234545623454567
我们要知晓,那面一个for循环一次,相当于里面那个for循环了整个周期,如果里面那个for还有一个for,那么最里面的for循环一个周期等于上一级的for循环一次
由此可以知道,最里面for要执行的次数为:最外层的for循环次数*次一级for循环次数*自己要循环的次数。
举个例子 99乘法表的表达式 就是for(){for}体系的:a*b
那么 我们就要先给a 循环一下 可以知道 是 for(a=1;a<10,a++)
b 循环一下 可以知道 是for(b=1;b<10,b++)
那么 两个组合一下 就是 for(a=1;a<10,a++){
for(b=1;b<10,b++){
System.out.print(a + "*" + b + "="+a*b+" ")
} System.out.println(" ")
}
但是 这样的出来的结果是所有的情况~我们要按照99乘法表的格式去展现,通过观察可以得到,99乘法表中 A》B
所以 我们的B循环当中的 表达式 应该改成 B《 a
所以 正确的表达式应该是
for (int a = 1; a < 10; a++) {
for (int b = 1; b <= a; b++) {
System.out.print(a + "*" + b + "="+a*b+" ");
}
System.out.println(" ");
看上去可能有点饶,但是我们应该注意到,当看到有for。。。for时,我们要先去看最里面的for循环是怎么运行的,然后依次往外去观察,这样就会轻松很多。希望对大家有点帮助~ |
|