1.语法结构:
for(初始值;循环条件;迭代部分){
//循环操作代码块
}
2.执行规律:
1)首先执行1次初始值操作;
2)然后判断循环条件,如果条件为true,执行循环操作代码块,执行完循环操作代码块后,进行迭代,迭代完,再次判断循环条件,根据循环条件决定是否执行循环操作。
如果条件为false,则结束整个for循环结构,继续往下执行for循环结构后面的代码。
3.注意:
1)循环条件为布尔值,要么为true,要么为false。
2)如果第1次循环条件就不成立,那么for循环的循环操作1次都不会执行。
示例1:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
System.out.println("根据你输入的值可以输出以下加法表:");
for(int i =0,j=num;i<=num&&j>=0;i++,j--){
System.out.println(i+"+"+j+"="+num);
}}
结果:
请输入一个整数:
9
根据你输入的值可以输出以下加法表:
0+9=9
1+8=9
2+7=9
3+6=9
4+5=9
5+4=9
6+3=9
7+2=9
8+1=9
9+0=9
public static void main(String[] args) {
//for循环常见问题
//for循环缺少初始值,会报错,解决办法在()中添加初识值,或者在for循环前面添加初识值
// for(;i<10;i++){
// System.out.println("这是 "+i);
// }//for循环缺少循环条件,会进入死循环,解决办法,添加循环条件
// for(int i=0;;i++){
// System.out.println("这是 "+i);
// }//for循环缺少迭代部分,会进入死循环,解决办法,在()中添加迭代代码或者在循环操作后添加迭代代码
// for(int i=0;i<10;){
// System.out.println("这是 "+i);
i++;
// }
//for循环缺少初始值、循环条件、迭代部分,进入死循环
// for(;;){
// System.out.println("这是测试");
// }}
示例2:
public static void main(String[] args) {
//外层循环控制行数
for(int i =1;i<=6;i++){
//在输出每一行的*之前,还要输出空格,每一行*前面的空格数目是不相同的
//当每一行的列数不相同的时候,我们需要这出这一列与行号的关系
for(int k =1;k<=6-i;k++){
System.out.print(" ");
}
//内层循环控制每一行的列数
for(int j =1;j<=5;j++){
System.out.print("*");
}
//输完一行的空格和*之后换行
System.out.println();
}}
结果:
*****
*****
*****
*****
*****
*****
示例3:
public static void main(String[] args) {
//外层循环控制行数
for(int i =1;i<=7;i++){
//内层循环输出每一行的列数,每一行的列数不相同,需要找出列数与行号之间的关系
//输出每一行*前面的空格
for(int j =1;j<=7-i;j++){
System.out.print(" ");
}
//输出每一行的*
for(int k=1;k<=2*i-1;k++){
System.out.print("*");
}
//输出完每一行的“ ”和“*”之后要换行
System.out.println();
}
结果:
*
***
*****
*******
*********
***********
*************
示例4:
public static void main(String[] args) {
//使用双重for循环输出九九乘法表
//外层循环控制行数,九九乘法表一共有9行
for(int i =1;i<=9;i++){
//内层循环控制每一行的列数,每一行的列数与行号相同
for(int j =1;j<=i;j++){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
//输出每一行后进行换行
System.out.println();
}
}
结果:
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