Di artikel Perulangan for, Anda telah diperkenalkan pada perulangan for yang menggunakan sebuah variabel untuk mengontrol berapa kali pernyataan atau blok pernyataan dieksekusi dan kapan iterasi berakhir. Java versi 5 (Java SE 5) memperkenalkan varian lain perulangan for yang disebut dengan enhanced for statement. Enhanced for statement banyak digunakan di larik dan Java collections yang dapat melakukan iterasi otomatis sesuai dengan jumlah elemen larik tanpa perlu mengatur batasan awal dan akhir melalui variabel kontrol. Keuntungan enhanced for statement adalah dapat menghindari proses iterasi diluar jumlah elemen larik karena kesalahan pemberian nilai variabel kontrol. Berikut ini adalah sintaksis enhanced for statement.

   for (parameter : nama-larik)
      pernyataan tunggal;

atau

   for (parameter : nama-larik) {
      blok pernyataan;
   }

parameter terdiri dari tipe dan nama variabel. Tipe dari parameter harus sesuai dengan tipe elemen larik, sedangkan nama variabel bisa apa saja yang fungsinya untuk menerima sementara sebuah elemen larik. Elemen larik yang tersimpan di variabel akan berubah di setiap iterasi. Berikut ini adalah perbedaan penggunaan antara perulangan for yang memakai variabel kontrol dengan enhanced for statement untuk menampilkan elemen larik larikInt.

   int[] larikInt = {45, 30, 27, 84, 72, 30, 66, 49, 58};

   // Menggunakan perulangan for dengan variabel kontrol
   for (int x = 0; x < larikInt.length; x++)
      System.out.println(larikInt[x]);

   // Menggunakan enhanced for statement
   for (int nilai : larikInt)
      System.out.println(nilai);

Berikut ini adalah contoh program yang membandingkan penggunaan perulangan for yang memakai variabel kontrol dengan enhanced for statement untuk menampilkan nilai elemen dari larik larikWarna. File program disimpan di direktori c:\hindro\javasc dengan nama ForStatement.java.

// Nama file : ForStatement.java
// Perbedaan for dengan variabel kontrol dan enhanced for statement

// Deklarasi kelas
public class ForStatement {

   // Metoda main
   public static void main(String[] args) {

      String[] larikWarna = {"Marah", "Kuning", "Hijau", "Biru"};

      // Menampilkan elemen larik
      System.out.println("Perulangan for dengan variabel kontrol");
      for (int x = 0; x < larikWarna.length; x++)
         System.out.println(larikWarna[x]);

      System.out.println();
      System.out.println("Enhanced for statement");
      for (String warna : larikWarna)
         System.out.println(warna);
   }
}

Pernyataan baris nomor 19 – 20 menggunakan enhanced for statement untuk menampilkan nilai elemen larik larikWarna. Di setiap iterasi, satu elemen larik larikWarna disimpan di variabel warna dan elemen yang tersimpan akan berubah untuk iterasi berikutnya. Pernyataan break dan continue juga dapat digunakan sebagai kontrol tambahan untuk merubah arah kontrol program.

Baca artikel terkait lainnya: