Last Updated on December 9, 2021 by
Control flow dalam bahasa pemrograman Kotlin berguna untuk melakukan perintah kondisional dan berulang. Pada pembahasan ini kami akan membahas tentang Control Flow pada bahasa Kotlin.
Memahami control flow sangat penting dalam belajar kotlin dasar. Jika Anda tertarik untuk belajar kotlin, simak terus artikel ini.
Table of Contents
Control Flow Kotlin
Control Flow pada Kotlin terdiri dari if, when, for, dan while. Masing-masing dari control flow kotlin tersebut akan kami bahas pada berikut ini.
Ekspresi If
If pada kotlin merupakan bentuk ekspresi bukan keyword. Hal ini sesuai dengan kotlin yang merupakan bahasa fungsional. Ekspresi if akan mengembalikan nilai bila diperlukan. Seperti bahasa pemrograman lainnya, blok “if-else” digunakan sebagai operator pengecekan bersyarat awal. Dalam contoh berikut ini, kami akan membandingkan dua variabel dan memberikan output yang sesuai.
fun main(args: Array<String>) { val x:Int = 7 val y:Int = 16 var hasil: Int if (x > y) { hasil = x } else { hasil = y } print("Nilai terbesar adalah " +hasil) // sebagai ekspresi // val hasil = if (x > y) x else b }
Potongan kode di atas menghasilkan keluaran berikut sebagai hasil di browser. Contoh yang kami tampilkan juga berisi baris kode lain, yang menggambarkan cara menggunakan pernyataan “If” sebagai ekspresi.
Nilai terbesar adalah 16
Penggunaan When
Jika Anda pernah menggunakan bahasa pemrograman yang lain, Anda mungkin pernah mendengar atau mengetahui pernyataan switch, yang mana pada dasarnya adalah operator bersyarat ketika beberapa kondisi dapat diterapkan pada variabel tertentu.
Operator “when” mencocokkan nilai variabel dengan kondisi cabang. Jika memenuhi kondisi cabang maka itu akan mengeksekusi pernyataan di dalam ruang lingkup tersebut. Pada contoh berikut, kita akan mempelajari lebih lanjut tentang “when” di Kotlin.
un main(args: Array<String>) { val angka:Int = 7 when (angka) { 1 -> print("angka = = 1") 2 -> print("angka = = 2") else -> { // Perhatikan bloknya print("angka tidak bernilai 1 atau 2") } } }
Potongan kode di atas menghasilkan output sebagai berikut:
angka tidak bernilai 1 atau 2
Pada contoh di atas, kompilator Kotlin mencocokkan nilai angka dengan cabang yang diberikan. Jika tidak cocok dengan salah satu cabang, maka itu akan mengeksekusi bagian lain. Dengan kata lain, when setara dengan multiple if block.
Kotlin memberikan fleksibilitas lain kepada developer, di mana developer dapat memberikan beberapa pemeriksaan di baris yang sama dengan memberikan “,” di dalam pemeriksaan. Kami mengubah contoh di atas menjadi kode berikut ini:
fun main(args: Array<String>) { val angka:Int = 7 when (angka) { 1,2 -> print(" Angka bernilai 1 atau 2") else -> { // Perhatikan bloknya print("angka tidak bernilai 1 atau 2") } } }
Jalankan browser yang sama, yang menghasilkan keluaran berikut ini pada browser.
angka tidak bernilai 1 atau 2
For Loop
Loop adalah sebuah invensi yang menyediakan fleksibilitas untuk untuk melakukan iterasi melalui segala jenis struktur data. Seperti bahasa pemrograman lainnya, Kotlin juga menyediakan berbagai macam metodologi Looping, namun di antaranya “For” yang paling berhasil.
Implementasi dan penggunaan For loop secara konseptual mirip dengan for loop di Java. Contoh berikut menunjukkan bagaimana kita dapat menggunakan hal yang sama dalam contoh kehidupan nyata.
fun main(args: Array<String>) { val list = listOf(5, 15, 20, 30) for (i in list) println("Nilai dalam array adalah"+i) }
Pada potongan kode di atas, kami telah mendeklarasikan satu daftar bernama “list” dan menggunakan for loop kami melakukan iterasi melalui daftar yang ditentukan dan mencetak nilainya di browser. Berikut adalah outputnya:
Nilai dalam array adalah5
Nilai dalam array adalah15
Nilai dalam array adalah20
Nilai dalam array adalah30
Berikut ini adalah contoh lain dari kode yang mana kami menggunakan beberapa library fungsi untuk pembangunan projek yang lebih mudah dari yang pernah dikakukan sebelumnya.
un main(args: Array<String>) { val list = listOf(5, 15, 20, 30) for ((index, value) in list.withIndex()) { println("nilai pada list indeks $index adalah $value") } }
Sekali Anda mengkompilasi dan mengeksekusi beberapa kode di atas dalam koding yang Anda buat, hal tersebut akan menghasilkan output berikut ini pada browser Anda.
nilai pada list indeks 0 adalah 5
nilai pada list indeks 0 adalah 15
nilai pada list indeks 0 adalah 20
nilai pada list indeks 0 adalah 30
While Loop dan Do-While Loop
Loop While dan Loop Do-While memiliki cara kerja yang sama persis dengan cara yang sama seperti yang mereka lakukan dalam bahasa pemrograman lain. Satu-satunya perbedaan antara kedua loop ini adalah, dalam kasus loop Do-while, kondisinya akan diuji di akhir loop. Contoh berikut menunjukkan penggunaan loop While.
fun main(args: Array<String>) { var i:Int = 0 while(i< = 5) { println(i) i++ } }
Berdasarkan kode di atas akan menghasilkan output sebagai berikut dalam browser:
0
1
2
3
4
5
Kotlin juga memiliki loop lain yang bernama Do-While Loop, di mana body dari loop ini hanya akan dieksekusi sekali, kemudian setelah itu kondisinya akan diperiksa. Contoh berikut menunjukkan penggunaan loop Do-while.
fun main(args: Array<String>) { var i:Int = 0 do { i = i + 5 println(i) } while(i <= 20) }
Potongan kode di atas menghasilkan keluaran berikut di browser. Pada kode di atas, kompilator Kotlin akan mengeksekusi blok DO, kemudian akan masuk ke condition check dalam while block. Berikut adalah outputnya.
5
10
15
20
Penggunaan Return, Break, dan Continue
Jika Anda familiar dengan bahasa pemrograman lain, maka Anda harus memiliki gagasan tentang kata kunci berbeda yang membantu kami menerapkan control flow atau aliran kontrol yang baik dalam aplikasi. Berikut ini adalah berbagai kata kunci yang dapat digunakan untuk mengontrol loop atau jenis aliran kontrol lainnya.
- Return
Return adalah kata kunci yang mengembalikan beberapa nilai ke fungsi panggilan dari fungsi yang dipanggil. Dalam contoh berikut, kami akan mengimplementasikan skenario ini menggunakan dasar pengkodean Kotlin yang kami tulis pada artikel ini.
fun main(args: Array<String>) { var i:Int = 4 println(doubleMe(i)) } fun doubleMe(i:Int):Int { return 7*i; }
Dalam kode di atas, kode tersebut memanggil fungsi lain dan mengalikan input dengan 7, dan mengembalikan nilai resultan ke fungsi yang dipanggil yang merupakan fungsi utama kita. Kotlin mendefinisikan fungsi dengan cara berbeda yang akan kita bahas di bab selanjutnya. Untuk saat ini, cukup dipahami bahwa kode di atas akan menghasilkan keluaran berikut di browser.
28
2. Continue dan Break
Continue dan Break dalah bagian terpenting dari masalah logis. Kata kunci “break” menghentikan aliran pengontrol jika beberapa kondisi gagal dan “continue” melakukan hal yang sebaliknya.
Semua operasi ini terjadi dengan visibilitas langsung. Kotlin lebih pintar daripada bahasa pemrograman lain, di mana pengembang dapat menerapkan lebih dari satu label sebagai visibilitas. Potongan kode berikut menunjukkan bagaimana kami mengimplementasikan label ini di Kotlin.
fun main(args: Array<String>) { myLabel@ for(i in 1..5) { // menerapkan label if(i = = 3) { println(i) break@myLabel //menentukan label } else { println(i) continue@myLabel } } }
Kemudian kode-kode di atas akan menghasilkan output sebagai berikut ketika di browser:
1
2
3
Seperti yang Anda lihat, pengontrol melanjutkan loop, sampai dan kecuali nilai i adalah 3. Setelah nilai i mencapai 3, ia mulai mengeksekusi blok if dan setelah pernyataan break tercapai, seluruh aliran kontrol menghentikan program eksekusi.
Demikianlah penjelasan tentang control flow yang ada di bahasa pemrograman Kotlin. Jika Anda tertarik untuk belajar Kotlin dan mengetahui lebih dalam tentang Kotlin. Kunjungi terus situs Codekey dan aktifkan lonceng notifikasinya. Baca artikel-artikel kami sebelumnya, atau nantikan artikel-artikel kami selanjutnya.
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.