for循环语句可以说是Java语言中最有效,最灵活的循环结构,一般用在循环次数已知的情况下。

一、for循环语法

1 for(initialization; condition; update){
2             statements;
3     }

语法解释:for语句执行时,首先执行初始化操作(initialization),然后判断终止条件表达式( condition)是否满足,如果满足终止条件,则退出循环。否则执行循环体中的语句,接着执行迭代部分(update),完成一次循环。下次循环从判断终止条件开始,根据结果进行相应的操作。 

!注意:初始化操作(initialization)只在第一次循环时执行。

代码清单:

1.打印如下图形(倒立三角形) 

Java控制循环速度 java循环指令_九九乘法表

1 public class ForDemo1{
 2     piblic static void main(String[] args){
 3             for(int i=0;i<5;i++){
 4                 for(int j=i;j<5;j++){
 5                     System.out.print("*");
 6                 }
 7                 System.out.println();
 8                 }
 9             }
10          }

 

2.打印如下图形(正立三角形) 

Java控制循环速度 java循环指令_System_02

代码1:

1 public class Zhijiao{
 2     public static void main(String[] args){
 3     for(int i=0;i<5;i++){
 4         for(int j=0;j<=i;j++){
 5             System.out.print("*");
 6             }
 7             System.out.println();
 8             }
 9         }
10     }

 

(1)通过循环嵌套打印类似于这种图时,外循环控制行数,内循环控制列数,即每一行的个数。 
(2)对于按行减少(倒立三角形)的图形,让内循环的初始化随着外循环变化, 
如 int j=i; 
(3)对于按行增加(正立三角形)的图形,让内循环条件随着外循环变化,如 j<=x; 

3、打印九九乘法表 

Java控制循环速度 java循环指令_System_03

1 public class MultTable{
 2     public static void main(String[] args) {
 3         //使用for循环生成九九乘法表
 4 
 5         System.out.println("九九乘法表");
 6         for(int i=1;i<10;i++){          
 7                 for(int j=1;j<=i;j++){              
 8                 System.out.print(j+"*"+i+"="+(j*i)+"\t");   
 9             }
10                 System.out.println();   
11         }
12     }
13 }

 

看它打印出的形状像不像一个正立的三角形,每一行的都增加一个算式,就像打印上面(三、2题)的图形一样。让它的内循环条件随着外循环变化,从而循环打印出九九乘法表

4、打印等腰三角形

Java控制循环速度 java循环指令_System_04

1 public class Dengyao {
 2       public static void main(String[] args) {
 3           for(int i=1;i<=5;i++){//i--控制行
 4               for(int j=5-i;j>=0;j--){//j--控制空格的数量
 5                   System.out.print(" ");
 6               }
 7               for(int k=1;k<=2*i-1;k++){//k--控制*的数量
 8                   System.out.print("*");
 9              }
10              System.out.println();//每循环一次换行
11          }
12     }
13  }

 

5、打印实心的菱形

1 public class Lingxing {
 2         public static void main(String[] args) {
 3             //首先把菱形看成上下,上五下四,所以第一个for有5次,第二个for4次
 4             for(int i=1;i<=5;i++)
 5             {
 6             //将空格和*分开看,看" "的变化i=1时,他是4 ,2的时候是3找规律
 7                 for(int j=1;j<=5-i;j++)
 8                   System.out.print(" ");
 9                 for(int k=1;k<=2*i-1;k++)//找规律,i是 1 3 5 7 基数嘛
10                   System.out.print('*');
11                 //换一行
12                 System.out.println();
13             }
14              for(int i=1;i<=4;i++)
15             {
16                 for(int j=1;j<=i;j++)//空格 1 2 3 4 so
17                   System.out.print(" ");
18                 for(int k=7;k>=2*i-1;k--)//* 7 5 3 1倒着来的基数
19                   System.out.print('*');
20                   System.out.println();
21             }
22         }

6、打印空心的菱形

1 public class KongxinLingxing {
 2 
 3     public static void main(String[] args) {
 4         int num = 5;
 5         for(int i=1;i<=num;i++){
 6             for(int j=1;j<=num-i;j++){
 7                 System.out.print(" ");
 8             }
 9             for(int k=1;k<=2*i-1;k++){
10                 if(k==1||k==2*i-1){
11                     System.out.print("*");
12                 }
13                 else{
14                     System.out.print(" ");
15                 }
16             }
17             System.out.println();
18         }
19     
20         for(int i=1;i<num;i++){
21              for(int j=1;j<=i;j++)
22                   System.out.print(" ");
23              int count = 2*(num-i)-1; 
24              for(int k=0;k<count;k++)   {  
25                  if(k==0||k==count-1)    
26                      System.out.print("*");  
27                  else     
28                      System.out.print(" "); 
29                  }
30              System.out.println("");  
31              } 
32     }