Java 教程

Java控制語句

面向物件程式設計

Java內建類

Java檔案處理

Java錯誤與異常

Java多執行緒

Java同步

Java網路程式設計

Java集合

Java介面

Java資料結構

Java集合演算法

高階Java

Java雜項

Java APIs & 框架

Java類參考

Java有用資源

Java - 增強型for迴圈



Java 增強型for迴圈

增強型for迴圈是一種特殊的迴圈控制結構,允許您高效地編寫需要執行特定次數的迴圈。

即使您不知道需要重複執行任務多少次,增強型for迴圈也很有用。

語法

以下是增強型for迴圈(或增強型for迴圈)的語法:

for(declaration : expression) {
   // Statements
}

執行過程

  • 宣告 - 新宣告的塊變數的型別與您正在訪問的陣列的元素相容。該變數將在for塊內可用,其值將與當前陣列元素相同。

  • 表示式 - 此表示式計算出您需要迴圈遍歷的陣列。表示式可以是陣列變數或返回陣列的方法呼叫。

示例

示例1:迭代整數列表

在這個例子中,我們展示瞭如何使用foreach迴圈列印整數列表的內容。在這裡,我們建立了一個整數列表numbers並初始化了一些值。然後使用foreach迴圈列印每個數字。

import java.util.Arrays;
import java.util.List;

public class Test {

   public static void main(String args[]) {
      List<Integer> numbers = Arrays.asList(10, 20, 30, 40, 50);

      for(Integer x : numbers ) {
         System.out.print( x );
         System.out.print(",");
      }
   }
}

輸出

10, 20, 30, 40, 50,

示例2:迭代字串列表

在這個例子中,我們展示瞭如何使用foreach迴圈列印字串列表的內容。在這裡,我們建立了一個字串陣列names並初始化了一些值。然後使用foreach迴圈列印每個名稱。

import java.util.Arrays;
import java.util.List;

public class Test {

   public static void main(String args[]) {
      List<String> names = Arrays.asList("James", "Larry", "Tom", "Lacy");

      for( String name : names ) {
         System.out.print( name );
         System.out.print(",");
      }
   }
}

輸出

James, Larry, Tom, Lacy,

示例3:迭代物件陣列

在這個例子中,我們展示瞭如何使用foreach迴圈列印Student物件陣列的內容。在這裡,我們建立了一個Student物件的陣列students並初始化了一些值。然後使用foreach迴圈列印每個名稱。

public class Test {

   public static void main(String args[]) {
      Student[] students = { new Student(1, "Julie"), new Student(3, "Adam"), new Student(2, "Robert") };

      for( Students student : students ) {
         System.out.print( student );
         System.out.print(",");
      }
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

輸出

[ 1, Julie ],[ 3, Adam ],[ 2, Robert ],
廣告