java的for迴圈語句

來源:互聯網
上載者:User

for迴圈在第一次反覆之前要進行初始化。隨後,它會進行條件測試,而且在每一次反覆的時候,進行某種形式的“步進”(Stepping)。for迴圈的形式如下:

for(初始運算式; 布林運算式; 步進)
語句

無論初始運算式,布林運算式,還是步進,都可以置空。每次反覆前,都要測試一下布林運算式。若獲得的結果是false,就會繼續執行緊跟在for語句後面的那行代碼。在每次迴圈的末尾,會計算一次步進。
for迴圈通常用於執行“計數”任務:

 

//: ListCharacters.java// Demonstrates "for" loop by listing// all the ASCII characters.public class ListCharacters {  public static void main(String[] args) {  for( char c = 0; c < 128; c++)    if (c != 26 )  // ANSI Clear screen      System.out.println(        "value: " + (int)c +        " character: " + c);  }} ///:~


注意變數c是在需要用到它的時候定義的——在for迴圈的控製表達式內部,而非在由起始花括弧標記的代碼塊的最開頭。c的範圍是由for控制的運算式。
以於象C這樣傳統的程式化語言,要求所有變數都在一個塊的開頭定義。所以在編譯器建立一個塊的時候,它可以為那些變數分配空間。而在Java和C++中,則可在整個塊的範圍內分散變數聲明,在真正需要的地方才加以定義。這樣便可形成更自然的編碼風格,也更易理解。
可在for語句裡定義多個變數,但它們必須具有同樣的類型:

 

for(int i = 0, j = 1;    i < 10 && j != 11;    i++, j++) /* body of for loop */;


其中,for語句內的int定義同時覆蓋了i和j。只有for迴圈才具備在控製表達式裡定義變數的能力。對於其他任何條件或迴圈語句,都不可採用這種方法。

1. 逗號運算子
早在第1章,我們已提到了逗號運算子——注意不是逗號分隔字元;後者用於分隔函數的不同自變數。Java裡唯一用到逗號運算子的地方就是for迴圈的控製表達式。在控製表達式的初始化和步進控制部分,我們可使用一系列由逗號分隔的語句。而且那些語句均會獨立執行。前面的例子已運用了這種能力,下面則是另一個例子:

 

//: CommaOperator.javapublic class CommaOperator {  public static void main(String[] args) {    for(int i = 1, j = i + 10; i < 5;        i++, j = i * 2) {      System.out.println("i= " + i + " j= " + j);    }  }} ///:~


輸出如下:

 

i= 1 j= 11i= 2 j= 4i= 3 j= 6i= 4 j= 8


大家可以看到,無論在初始化還是在步進部分,語句都是順序執行的。此外,儘管初始化部分可設定任意數量的定義,但都屬於同一類型。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.