Perulangan / Iterasi pada bahasa pemrograman Java d6a7sda4
Perulangan atau Iterasi adalah konsep yang selalu ada dalam semua bahasa pemrograman, begitu juga dengan java. Bentuk iterasi dalam Java ada beberapa, yang pertama adalah for, kemudian ada while dan do-while. Kita akan membahas satu per satu setiap bentuk perulangan di bagian berikutnya.
For
Keyword for digunakan untuk melakukan iterasi kalau jumlah iterasinya tertentu, misalnya kita ingin melakukan iterasi sebanyak 10x atau 100x. Iterasi menggunakan for memerlukan tiga buah parameter, parameter pertama digunakan sebagai batas bawah iterasi, parameter kedua adalah kondisi kapan iterasi berhenti dan parameter terakhir dugunakan untuk menaikkan atau menurunkan counter. Kita lihat sintaks dasar dari for seperti di bawah ini :
for( parameter1 ; parameter2 : parameter3) {
}
sintaks iterasi for diawali dengan keyword for, kemudian diikuti dengan kurung buka, setelahnya ada tiga buah parameter yang dipisahkan dengan titik dua (:), kurung buka tutup dan diakhiri dengan pasangan kurung kurawal buka-tutup untuk menandakan blok kode yang akan dieksekusi berulang-ulang hingga iterasi berhenti. Berikut ini contoh konkrit penggunaan
iterasi menggunakan for :
public class ForTest {
public static void main(String[] args) {
for(int i = 0; i< 10; i++) {
System.out.println("iterasi ke-" + i);
}
}
}
Perhatikan sintaks for di atas, parameter pertama diisi dengan int i = 0, ini artinya adalah kita akan menggunakan variabel i sebagai counter (penghitung) untuk for diawali dari 0. Parameter kedua diisi dengan i < 10, artinya iterasi for akan terus belangsung selama i bernilai kurang dari 10 dan berhenti ketika i sudah mencapai nilai sepuluh. Parameter ketiga diisi dengan i++ artinya setiap kali iterasi maka counter i akan naik satu nilai. Ketiga parameter ini mengindikasikan bahwa iterasi dilakukan dari i bernilai 0, berakhir ketika i mencapai nilai 10 dan setiap kali iterasi i naik satu-satu, total akan terjadi 10x perulangan.
Hasil eksekusi dari kode di atas adalah sebagai berikut :
$ javac ForTest.java
$ java ForTest
iterasi ke-0
iterasi ke-1
iterasi ke-2
iterasi ke-3
iterasi ke-4
iterasi ke-5
iterasi ke-6
iterasi ke-7
iterasi ke-8
iterasi ke-9
$
Iterasi for juga bisa berlangsung mundur, contohnya seperti di bawah ini :
public class ForMundurTest {
public static void main(String[] args) {
for(int i = 10; i > 0; i--) {
System.out.println("iterasi ke-" + i);
}
}
}
Hasil eksekusinya akan sedikit berbeda, seperti di bawah ini :
$ javac ForMundurTest.java
$ java ForMundurTest
iterasi ke-10
iterasi ke-9
iterasi ke-8
iterasi ke-7
iterasi ke-6
iterasi ke-5
iterasi ke-4
iterasi ke-3
iterasi ke-2
iterasi ke-1
$
Ingat, iterasi for digunakan kalau kita tahu berapa kali iterasi dilaksanakan, hal ini dikarenakan iterasi for memerlukan parameter awal, kondisi berhenti dan berapa banyak counter bertambah/berkurang dalam setiap iterasi. Kalau iterasi tidak diketahui berapa kali dilakukan dan hanya tahu bahwa selama suatu kondisi tertentu masih benar iterasi akan terus berlangsung maka kita bisa menggunakan while.
while
Seperti yang sudah kita bahas sedikit di atas, bentuk iterasi while digunakan kalau kita tidak tahu berapa kali interasi akan berlangsung, tetapi tahu kapan iterasi berhenti dari sebuah kondisi tertentu. Bentuk sintaks while sangat sederhana dan hanya memerlukan satu saja parameter kondisi yang bernilai boolean true atau false, selama kondisi ini masih bernilai true maka iterasi akan terus dilaksanakan. Kalau nilai kondisi adalah false maka iterasi while akan berhenti. Bentuk sintaksnya adalah seperti di bawah ini :
while( kondisi ) {
}
Sintaks while diawali dengan keyword while kemudian diikuti dengan kurung buka, di dalam kurung buka ada satu kondisi, dan diakhiri kurung tutup, setelah itu ada pasangan kurung kurawal buka tutup.
Kita akan membuat contoh kecil yang akan mengambil nilai waktu sekarang, mengetes apakah waktu sekarang ini kalau dibagi 3 sisanya 0, selama tidak memenuhi kondisi di atas maka iterasi dijalankan terus menerus. Kode untuk contoh di atas adalah seperti berikut ini :
public class WhileTest {
public static void main(String[] args) {
while(System.currentTimeMillis() % 3 != 0) {
System.out.println("waktu sekarang dibagi 3 masih ada sisanya");
}
}
}
Jumlah iterasi dalam kode di atas tidak menentu, terkadang iterasi bisa terjadi banyak kali, sedikit kali atau bahkan tidak terjadi iterasi sama sekali.
$ javac WhileTest.java
$ java WhileTest
waktu sekarang dibagi 3 masih ada sisanya
waktu sekarang dibagi 3 masih ada sisanya
$
do-while
Bentuk iterasi do-while digunakan kalau kita ingin agar setidaknya satu iterasi terjadi baru kemudian ditest kondisinya apakah iterasi berikutnya dilaksanakan atau tidak. Sama dengan bentuk iterasi while, bentuk iterasi do-while juga memerlukan satu parameter kondisi di dalam while-nya. Sintaks do-while adalah seperti berikut ini :
do {
} while( kondisi );
Kita modifkasi sedikit kode di atas dengan menggunakan bentuk iterasi do-while, seperti di bawah ini :
public class WhileTest {
public static void main(String[] args) {
do {
System.out.println("waktu sekarang dibagi 3 masih ada sisanya");
while(System.currentTimeMillis() % 3 != 0);
}
}
kalau kita eksekusi kode di atas, maka setidaknya string di atas diprint sekali, kalau misalnya kondisi di dalam while masih benar maka string-nya akan dipring lagi sampai kondisi di dalam while bernilai false.
No comments:
Post a Comment