鍍金池/ 教程/ Java/ Java 循環(huán)控制
Java 接口
Java 方法
Java 數(shù)字
Java 條件判斷
Java 異常處理
Java 字符
Java 重寫
Java 網(wǎng)絡(luò)編程
Java 數(shù)據(jù)結(jié)構(gòu)
Java 的對(duì)象和類
Java 多線程
Java 封裝
Java 數(shù)組
Java Applet 基礎(chǔ)
Java 庫類
Java 抽象
Java 繼承
Java 正則表達(dá)式
Java 描述符的類型
Java 發(fā)送郵件
Java 序列化
Java 泛型
Java 多態(tài)
Java 變量類型
Java 基本數(shù)據(jù)類型
Java 包
Java 快速參考指南
Java 基本運(yùn)算符
Java 概述
Java 字符串
Java 循環(huán)控制
Java 環(huán)境設(shè)置
Java 文件注釋
Java 文件和 I/O
Java 集合
Java 基本語法
Java 日期和時(shí)間

Java 循環(huán)控制

可能存在一種情況,當(dāng)我們需要執(zhí)行的代碼塊數(shù)次,通常被稱為一個(gè)循環(huán)。
Java有非常靈活的三循環(huán)機(jī)制??梢允褂靡韵氯N循環(huán)之一:

  • while 循環(huán)
  • do...while 循環(huán)
  • for 循環(huán)

截至Java5,對(duì)增強(qiáng)的for循環(huán)進(jìn)行了介紹。這主要是用于數(shù)組。

while 循環(huán)

while循環(huán)是一個(gè)控制結(jié)構(gòu),可以重復(fù)的特定任務(wù)次數(shù)。

語法

while循環(huán)的語法是:

while(Boolean_expression)
{
   //Statements
}

在執(zhí)行時(shí),如果布爾表達(dá)式的結(jié)果為真,則循環(huán)中的動(dòng)作將被執(zhí)行。只要該表達(dá)式的結(jié)果為真,執(zhí)行將繼續(xù)下去。

在這里,while循環(huán)的關(guān)鍵點(diǎn)是循環(huán)可能不會(huì)永遠(yuǎn)運(yùn)行。當(dāng)表達(dá)式進(jìn)行測(cè)試,結(jié)果為假,循環(huán)體將被跳過,在while循環(huán)之后的第一個(gè)語句將被執(zhí)行。

示例

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");
      }
   }
}

這將產(chǎn)生以下結(jié)果:

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 循環(huán)

do ... while循環(huán)類似于while循環(huán),不同的是一個(gè)do ... while循環(huán)是保證至少執(zhí)行一次。

語法

do...while循環(huán)的語法是:

do
{
   //Statements
} while (Boolean_expression);

請(qǐng)注意,布爾表達(dá)式出現(xiàn)在循環(huán)的結(jié)尾,所以在循環(huán)中的語句執(zhí)行前一次布爾測(cè)試。

如果布爾表達(dá)式為真,控制流跳回,并且在循環(huán)中的語句再次執(zhí)行。這個(gè)過程反復(fù)進(jìn)行,直到布爾表達(dá)式為假。

示例

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 );
   }
}

這將產(chǎn)生以下結(jié)果:

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 循環(huán)

for循環(huán)是一個(gè)循環(huán)控制結(jié)構(gòu),可以有效地編寫需要執(zhí)行的特定次數(shù)的循環(huán)。

知道一個(gè)任務(wù)要重復(fù)多少次的時(shí)候,for循環(huán)是有好處的。

語法

for循環(huán)的語法是:

for(initialization; Boolean_expression; update)
{
   //Statements
}

下面是一個(gè)for循環(huán)的控制流程:

  • 初始化步驟首先被執(zhí)行,并且僅一次。這個(gè)步驟可聲明和初始化任何循環(huán)控制變量。不需要把一個(gè)聲明放在這里,只需要一個(gè)分號(hào)出現(xiàn)。

  • 接下來,布爾表達(dá)式求值。如果是 true,則執(zhí)行循環(huán)體。如果是false,則循環(huán)體不執(zhí)行, 并且流程控制的跳轉(zhuǎn)到經(jīng)過for循環(huán)的下一個(gè)語句。

  • 之后循環(huán)體在for循環(huán)執(zhí)行時(shí),控制流程跳轉(zhuǎn)備份到更新語句。該語句允許更新任何循環(huán)控制變量。這個(gè)語句可以留空,只要一個(gè)分號(hào)出現(xiàn)在布爾表達(dá)式之后。

  • 布爾表達(dá)式現(xiàn)在再次評(píng)估計(jì)算。如果是true,循環(huán)執(zhí)行,并重復(fù)這個(gè)過程(循環(huán)體,然后更新的步驟,然后布爾表達(dá)式)。之后,布爾表達(dá)式為 false,則循環(huán)終止。

示例

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");
      }
   }
}

這將產(chǎn)生以下結(jié)果:

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 循環(huán)在 Java 中新特性

截至Java5,對(duì)增強(qiáng)的for循環(huán)進(jìn)行了介紹。這主要是用于數(shù)組。

語法

增強(qiáng)的for循環(huán)的語法是:

for(declaration : expression)
{
   //Statements
}
  • 聲明: 新聲明塊變量,這是一種與你所正在訪問數(shù)組中的元素兼容的變量。該變量在for塊內(nèi)可被利用并且它的值作為當(dāng)前的數(shù)組元素將是相同的。

  • 表達(dá): 這個(gè)計(jì)算結(jié)果完成需要循環(huán)數(shù)組。表達(dá)式可以是一個(gè)數(shù)組變量或返回一個(gè)數(shù)組的方法調(diào)用。

示例

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(",");
      }
   }
}

這將產(chǎn)生以下結(jié)果:

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

break 關(guān)鍵字

關(guān)鍵字break是用來停止整個(gè)循環(huán)的。 break關(guān)鍵字必須使用于任何循環(huán)中或一個(gè)switch語句中。

關(guān)鍵字break將停止最內(nèi)層循環(huán)的執(zhí)行,并開始執(zhí)行在塊之后的下一行代碼。

語法

break語法是任何循環(huán)中一個(gè)單獨(dú)的語句:

break

示例

public class Test {

   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};

      for(int x : numbers ) {
         if( x == 30 ) {
          break;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

這將產(chǎn)生以下結(jié)果:

10
20

continue 關(guān)鍵字

continue關(guān)鍵字可以在任一環(huán)的控制結(jié)構(gòu)使用。它使循環(huán)立即跳轉(zhuǎn)到循環(huán)的下一次迭代.

  • 在for循環(huán)中,continue關(guān)鍵字會(huì)導(dǎo)致控制流立即跳轉(zhuǎn)到更新語句。
  • 在一個(gè)while循環(huán)或do/while循環(huán),控制流立即跳轉(zhuǎn)到布爾表達(dá)式。

語法

continue 語法是任何循環(huán)中一個(gè)單獨(dú)的語句:

continue

示例


   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");
      }
   }
}

這將產(chǎn)生以下結(jié)果:

10
20
40
50

接下來是?

在接下來的章節(jié),我們將會(huì)學(xué)習(xí)在Java程序設(shè)計(jì)中的決策語句。