java入門---循環結構 - for, while 及 do...while&break&continue

    順序結構的程序語句只能被執行一次。若是您想要一樣的操做執行屢次,,就須要使用循環結構。Java中有三種主要的循環結構:html

 

  • while 循環
  • do…while 循環
  • for 循環

    在Java5中引入了一種主要用於數組的加強型for循環。首先咱們來看while循環。while是最基本的循環,它的結構爲:
數組

while( 布爾表達式 ) {
  //循環內容
}//只要布爾表達式爲 true,循環就會一直執行下去

public class Test {
   public static void main(String args[]) {
      int x = 10;
      while( x < 20 ) {
         System.out.print("value of x : " + x );
         x++;
         System.out.print("\n");
      }
   }
}
spa

    運行結果爲:.net

 

value of x : 10 value of x : 11 value of x : 12 value of x : 13 value of x : 14 value of x : 15 value of x : 16 value of x : 17 value of x : 18 value of x : 19

    再來看do...while循環。對於 while 語句而言,若是不知足條件,則不能進入循環。但有時候咱們須要即便不知足條件,也至少執行一次。do…while 循環和 while 循環類似,不一樣的是,do…while 循環至少會執行一次。code

 

do { //代碼語句 }while(布爾表達式);

    在這裏要注意下,布爾表達式在循環體的後面,因此語句塊在檢測布爾表達式以前已經執行了。若是布爾表達式的值爲 true,則語句塊一直執行,直到布爾表達式的值爲 false。htm

public class Test {
   public static void main(String args[]){
      int x = 10;
 
      do{
         System.out.print("value of x : " + x );
         x++;
         System.out.print("\n");
      }while( x < 20 );
   }
}

blog

    運行結果爲:作用域

 

value of x : 10 value of x : 11 value of x : 12 value of x : 13 value of x : 14 value of x : 15 value of x : 16 value of x : 17 value of x : 18 value of x : 19
    在來是for循環。雖然全部循環結構均可以用 while 或者 do...while表示,但 Java 提供了另外一種語句 —— for 循環,使一些循環結構變得更加簡單。for循環執行的次數是在執行前就肯定的。語法格式以下:

for(初始化; 布爾表達式; 更新) {
    //代碼語句
}

it

    關於 for 循環有如下幾點說明:for循環

 

  • 最早執行初始化步驟。能夠聲明一種類型,但可初始化一個或多個循環控制變量,也能夠是空語句。
  • 而後,檢測布爾表達式的值。若是爲 true,循環體被執行。若是爲false,循環終止,開始執行循環體後面的語句。
  • 執行一次循環後,更新循環控制變量。
  • 再次檢測布爾表達式。循環執行上面的過程。
public class Test {
   public static void main(String args[]) {
 
      for(int x = 10; x < 20; x = x+1) {
         System.out.print("value of x : " + x );
         System.out.print("\n");
      }
   }
}

    Java5 引入了一種主要用於數組的加強型 for 循環。Java 加強 for 循環語法格式以下:

for(聲明語句 : 表達式)
{
   //代碼句子
}

    聲明語句:聲明新的局部變量,該變量的類型必須和數組元素的類型匹配。其做用域限定在循環語句塊,其值與此時數組元素的值相等。表達式:表達式是要訪問的數組名,或者是返回值爲數組的方法。

public class Test {
   public static void main(String args[]){
      int [] numbers = {10, 20, 30, 40, 50};
 
      for(int x : numbers ){
         System.out.print( x );
         System.out.print(",");
      }
      System.out.print("\n");
      String [] names ={"James", "Larry", "Tom", "Lacy"};
      for( String name : names ) {
         System.out.print( name );
         System.out.print(",");
      }
   }

}

    運行結果爲:

10,20,30,40,50, James,Larry,Tom,Lacy,

    而後咱們來看break。break 主要用在循環語句或者 switch 語句中,用來跳出整個語句塊。break 跳出最裏層的循環,而且繼續執行該循環下面的語句。break 的用法很簡單,就是循環結構中的一條語句:

 

break;
public class Test {
   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};
 
      for(int x : numbers ) {
         // x 等於 30 時跳出循環
         if( x == 30 ) {
            break;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

    運行結果爲:

 

10 20

    再來看continue。continue 適用於任何循環控制結構中。做用是讓程序馬上跳轉到下一次循環的迭代。在 for 循環中,continue 語句使程序當即跳轉到更新語句。在 while 或者 do…while 循環中,程序當即跳轉到布爾表達式的判斷語句。continue 就是循環體中一條簡單的語句:

 

continue;
public class Test {
   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};
 
      for(int x : numbers ) {
         if( x == 30 ) {
        continue;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

    運行結果爲:

 

10 20 40 50

    來看個for 嵌套循環實例,第一個 for :定一個整型變量 i, 它的初始值是 1;判斷 i 是否小於等於 3;若是成立, i 就自增 1。第二個 for :定一個整型變量 n, 它的初始值是 1;判斷 n 是否小於等於 3;若是成立, n 就自增 1:

 

for(int i=1; i<=3; i++){     for(int n=1; n<=3; n++){         //輸出結果。。。。         System.out.println("i = " + i + ", n = " + n);     } }

    for循環嵌套:以打印九九乘法表爲例,第一個 for 循環:表明行數。定一個整型變量 i, 它的初始值是 1;判斷 i 是否小於等於 9;若是成立, i 就自增 1。第二個 for 循環:表明列數。定一個整型變量 j, 它的初始值是 1;判斷 j 是否小於等於 i;若是成立, j 就自增 1:

 

public class Test {     public static void main(String args[]) {         for(int i=1;i<=9;i++){             for(int j=1;j<=i;j++){                 System.out.print(j+"*"+i+"="+i*j+" ");             }             System.out.println();         }     } }

    for循環嵌套實例,利用for循環打印一個菱形:

 

public class Test { public static void main(String[] args) { //定義變量 int i,j,q; //打印菱形的上半部分,左邊打印倒直角三角形的空格,右邊打印等腰三角形 for( i = 1;i < 6; i ++) //外循環控制行數,共打印五行 { //左邊打印倒直角三角形空格 for( j = 5; j > i; j--) //與外循環關聯,初始值不變,表達式變化,控制打印的列數 { System.out.print(" "); } //右邊等腰三角形 for( q = 1;q < i*2; q++) //與外循環關聯,初始值不變,表達式變化,打印奇數列1,3,5,7,9 { System.out.print("*"); } System.out.println(); //換行 } //打印菱形的下半部分,左邊爲直角三角形的空格,右邊爲倒的等腰三角形 for(i = 1; i < 5; i++) //外循環控制行數,共打印四行 { //左邊直角三角形空格 for(j = 1;j <= i; j++) { //與外循環關聯,初始值不變,表達式變化,共打印五行 System.out.print(" "); } //右邊倒直角三角形 for( q = i*2; q < 9 ; q++) { //與外循環關聯,初始值變化,表達式不變,打印奇數列7,5,3,1 System.out.print("*"); } System.out.println(); //換行 } } }

    咱們能夠按照以下思路來練習:

 

  • 菱形爲上下兩個等腰三角形(用兩個外層for循環分別表明上下兩部分)
  • 上部分爲倒直角三角形 + 等腰三角形。外層for以要嵌套兩個for循環分別打印出倒直角三角形(直角三角形打印空格)和等腰三角形
  • 下部分爲直角三角形和倒等腰三角形。外層for一樣要嵌套兩個for循環打印直角三角形(直角三角形打印空格)和倒的等腰三角形
    好啦,此次就到這裏了。若是感受不錯的話,請多多點贊支持哦。。。
  原文連接:https://blog.csdn.net/luyaran/article/details/80109430
相關文章
相關標籤/搜索