Dasar Java : Loop for – Loop Initializer

Oleh : Reza Ervani

بسم الله الرحمن الرحيم

Sebagaimana yang disebutkan sebelumnya, loop  for terdiri dari tiga statement, dipisahkan oleh titik koma. Berikut contoh yang ada sebelumnya yang menunjukkan tiga statement :


for(int i=0; i < 10; i++) {

   System.out.println("I is: " + i);

}

Statement-statement ini masing-masing memiliki peran yang berbeda dalam eksekusi loop for . Peran-peran itu adalah :

  1. Loop initializer
  2. Loop condition
  3. Post iteration operation

Kita akan bahas satu per satu :

Loop Initializer

Statement loop initializer hanya dieksekusi satu kali, sebelum loop for dimulai. Statement initializer loop umumnya digunakan untuk memulai variabel atau objek yang digunakan oleh statement pengkondisian loop. Pada contoh sebelumnya (diulangi kembali dibawah ini) statement loop initializer mendeklarasikan sebuah variabel int dan memberikannya nilai awal 0 :


for(int i=0; i < 10; i++) {

   System.out.println("I is: " + i);

}

Kita sebenarnya tidak memerlukan statement loop initializer. Dia bersifat opsional. Berikut contoh loop for tanpa statement loop initializer :


MyLoop loop = new MyLoop(10);

for( ; loop.loopAgain() ; loop.iterationDone()) {
}

Perhatikan bagaimana sebuah objek digunakan untuk menjaga keadaan pengendalian loop. Tentu saja, objek dapat saja dideklarasikan di statement initializer loop. Di contoh tersebut kita hanya memindahkannya keluar loop for untuk menunjukkan bahwa hal itu bisa dilakukan.

Kita juga dapat menginisialisasi variabel didalam statement loop initializer. Berikut contohnya :


for(int i=0, n=10; i < n; i++) {

}

Perhatikan bagaimana dua variabel dideklarasikan. Variabel i digunakan sebagai penghitung iterasi, dan variabel n digunakan sebagai batas iterasi. Perhatikan juga, bagaimana kondisi loop sekarang membandingkan variabel i dengan variabel n , bukan dengan nilai konstanta.

About Reza Ervani 387 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.