Looping (Perulangan) Kotlin : while, do-while, dan for-loops

Assalamualaikum Warahmatullahi Wabarakatuh. Pada postingan sebelumnya, kita sudah membahas mengenai penggunaan struktur kontrol Percabangan Kotlin : if, if-else, if-else-if, dan when (switch). Berikut ini kita akan membahas penggunaan looping atau perulangan pada kotlin, Ada tiga macam jenis dari struktur kontrol pengulangan yaitu while, do-while, dan for-loops. Cara penulisannya hampir sama dengan java namun ada beberapa perbedaan yang harus kalian ketahui.


Struktur kontrol Pengulangan merupakan sebuah pernyataan dari Kotlin yang mengijinkan kita untuk mengeksekusi blok code atau statement secara berulang-ulang sesuai dengan jumlah tertentu yang diinginkan.

Penggunaan while loop

Pernyataan yang terdapat pada while loop akan di eksekusi berulang-ulang selama kondisi pada statement while bernilai true.

while (kondisi) {
       // Pernyataan atau Statement
}

Contoh programnya seperti ini :

fun main(args: Array<String>){
    var angka = 0
    while(angka <= 5){
        println("Sukses")
        angka++
    }
}

Jika kita jalankan, pernyataan yang terdapat pada statement while akan terus dieksekusi hingga kondisi menjadi false, perintah angka++ digunakan agar nilai pada variable angka terus bertambah 1 hinggal kondisi pada while menjadi false dan program dihentikan.
Output1 Penggunaan While Menggunkan Kotlin
Output1 Penggunaan While Menggunkan Kotlin

Program tersebut akan mencetak kata "Sukses" sebanyak 5 kali,  Perlu kalian ingat jika bagian angka++ dihilangkan, akan menghasilkan pengulangan yang terus menerus (infinite loop). Pastikan agar kalian memberikan pernyataan yang membuat pengulangan berhenti pada suatu kondisi.

Penggunaan do-while loop

Statement do-while sama dengan statement while yaitu untuk mengeksekusi pernyataan berulang-ulang selama kondisi true.

do {
   // Pernyataan atau Statement
} while ( kondisi )

Perbedaannya, pernyataan pada statement do akan dieksekusi terlebih dahulu sebelum dievaluasi kondisinya pada statement while, jika kondisi pada statement while bernilai true, maka pernyataan pada do akan di eksekusi lagi secara berulang-ulang sampai bernilai false dan program dihentikan.

Contoh Program sederhana dengan menggunakan do-while, seperti berikut ini :

var angka = 0
    do{
        println("Sukses")
        angka++
    }while (angka < 5)

Jika kita jalankan, hasilnya akan sama dengan contoh program pada while loop.

Coba jika kita ubah kondisi pada while menjadi false, maka akan kelihatan perbedaannya :

Menggunakan while loop :

var angka = 0
    while(angka > 5){ //Menghasilkan Nilai False
        println("Sukses")
    }

Menggunakan do-while loop :

var angka = 0
    do{
        println("Sukses")
    }while (angka > 5) //Menghasilkan Nilai False

Jika kita jalankan, hasilnya akan seperti ini :
Output porgram menggunakan while
Output porgram menggunakan while
Output porgram menggunakan do-while
Output porgram menggunakan do-while

Coba kalian perhatikan, pada program yang menggunakan while tidak akan menampilkan Output karena pernyataan pada statement while akan dieksekusi jika kondisi bernilai true, Jika pada do-while, pernyataan akan tetap di eksekusi walaupun bernilai false, itu karena, do-while akan mengeksekusi peryataan terlebih dahulu sebelum mengevaluasi kondisinya.

Baca Juga :

Penggunaan for loop

Penggunaan for loop pada kotlin lebih simple dan mudah dibandingkan dengan Java, kita bisa menggunakan for untuk mengeksekusi pernyataan secara berulang-ulang, tetapi penggunaannya lebih simple dibandingkan while dan do-while.

for (variable(single/multiple variable) in expression) Pernyataan

atau

for (variable(single/multiple variable) in expression) {
      // Pernyataan
}

Pada contoh berikut ini, misalnya kita ingin mencetak kata "Sukses" sebanyak 7 kali, maka kita tidak memerlukan kondisi true, seperti pada while dan do-while, seperti ini :

fun main(args: Array<String>){
    for (data in 1..7) println("Sukses")
}

Jalankan Program tersebut :
Output hasil dari Looping menggunakn for loop
Output hasil dari Looping menggunakn for loop

Disana terdapat sebuah variable Integer bernama data (Kalian bisa mengganti namanya sesuai keinginan), jadi program akan melooping sesuai dengan range atau jumlah item pada expression yang diberikan,  dan expression tersebut menjadi suatu nilai dari variable item.

Variable item akan mempunyai nilai dari expression, kita juga bisa mencetak veriable tersebut seperti ini :

fun main(args: Array<String>){
    for (data in 1..7) println(data)
}

Hasilnya akan seperti berikut ini :
Mencetak Nilai atau Expression pada Variable item
Mencetak Nilai atau Expression pada Variable item

Coba kalian perhatikan, jika kita panggil data tersebut, nilai yang terdapat di sebelah kanan in akan keluar, itu artinya nilai tersebut bisa kita panggil melalui variable data, dan akan melooping sesuai dengan jumlah atau range pada nilai/expression tersebut.

Jika masih belum paham, mari kita ke contoh berikutnya, Disini kita akan membuat sebuah List, dimana pada list tersebut akan kita isi beberapa item, lalu kita akan mencetak semua item tersebut menggunakan for loop, Seperti berikut ini :

fun main(args: Array<String>){
    val teman: List<String> = listOf("Wildan","Azis","Alvians","Ferdi")
    for(data in teman){
        data.let { println(it) }
    }
}

Jika kita jalankan, hasilnya akan seperti ini :
Mencetak item yang terdapat pada List teman
Mencetak item yang terdapat pada List teman

Coba kalian perhatikan, Program akan melooping sesuai jumlah item pada list yang terdapat pada variable teman, dikarenakan pada list tersebut berjumlah 4 item yaitu "WIldam", "Azis", "Alvians", "Ferdi". Jadi program akan melooping sebanyak 4 kali.

Fungsi let yaitu untuk Memanggil blok fungsi yang ditentukan dengan nilai this sebagai argumennya dan mengembalikan hasilnya,  lalu kita akan mencetak semua item pada list tersebut melalui variable data, dengan menggunakan fungsi it.

Sekian dari saya, mohon maaf bila ada kesalahan kata atau pembahasan saya yang kurang tepat dan jelas, somoga ilmu yang saya berikan bisa bermanfaat untuk kalian semua dan jangan lupa untuk follow atau subscribe, sampai ketemu lagi di pembahasan selanjutnya. Terakhir dari saya, Wassalamualaikum Warahmatullahi Wabarakatuh.




Disqus Comments