Belajar Bahasa Pemrograman Kotlin mudah

Belajar Kotlin vararg, named arguments & default parameter value [part 6]

Vararg

Sebelumnya pada part 5 (disini) kita sudah belajar bagaimana bekerja dengan data collection, disamping itu untuk menambah fungsionalitas dan fleksibilitas, Kotlin juga memiliki sebuah keyword yang bernama “vararg“, yang pada dasarnya mewakili sejumlah variabel argumen.

Lebih jelasnya langsung dicoba aja coding berikut :

fun fungsiSaya(sapaan:String ,vararg nama:String){
    nama.forEach {
        println("$sapaan $it")
    }
}

fun main() {
    fungsiSaya("Halo", "Mira", "Rima", "Lastri")
}

Output :
>> Halo Mira
>> Halo Rima
>> Halo Lastri

vararg pada coding di atas secara default bertindak seperti array kosong yang siap menerima satu atau beberapa argumen sekaligus. Sederhananya sih gitu.

Dan kalau tidak ingin menggunakan vararg mungkin penulisan codingnya akan seperti ini :

fun fff(sapaan:String ,nama1:String,nama2:String,nama3:String){
    println("$sapaan $nama1")
    println("$sapaan $nama2")
    println("$sapaan $nama3")
}

fun main() {
    fff("Halo", "Mira","Rima","Lastri")

}

Untuk contoh diatas kita buat sederhana agar bisa dimengerti dulu, dan biasanya dalam prakteknya atau project melibatkan request array value dari network request atau database yang mana “vararg” pada kotlin ini bisa kita manfaatkan fungsinya.

Berikut contoh sederhana jika ingin mengirimkan argumen dalam bentuk array :

fun fungsiSaya(sapaan:String ,vararg nama:String){
    nama.forEach {
        println("$sapaan $it")
    }
}

fun main() {
    var org = "Lina"
    val iniArrayKu = arrayOf("Budi","Arif","Rudi")
    fungsiSaya("Halo", *iniArrayKu)
    fungsiSaya("Halo",org)
    fungsiSaya("Halo","Dika")
}

Output :
>> Halo Budi
>> Halo Arif
>> Halo Rudi
>> Halo Dika
>> Halo Lina

Perhatikan jika ingin menggunakan array saat menuliskan argumennya memerlukan tanda bintang ( * ) – (Baris 10)

Named argument

Selanjutnya ada fitur yang juga cukup baik dalam menambah fleksibilitas pada bahasa pemrograman kotlin yaitu “Named Argument“, nah apa sih named argument itu ?

Secara default argument yang kita tulis haruslah sesuai urutannya dengan parameter yang kita buat, tapi dengan menggunakan named argument kita bisa menaruhnya secara tidak urut, singkatnya seperti itu.

Kalau kalian penasaran bisa dicoba urutan argument diacak lalu coba jalankan apakah bisa ?, biasanya sih error hehe, maka dari itu kita gunakan named argument seperti berikut :

fun namaSaya(sapaan:String ,nama:String, umur:Int ){
    println("$sapaan $nama, umur anda $umur")
}

fun main() {
    namaSaya(umur= 21, nama = "Mira", sapaan = "Halo")
}

Output :
>> Halo Mira, umur anda 21

Perhatikan pada argument diatas diberikan tiap-tiap nama parameter yang dituju.

Ibarat kata sih named argument ini memperjelas/mempertegas ke Compiler agar jangan salah mengalamatkan value yang dikirim ke parameter.

Default Parameter Value

Sesuai dengan namanya fitur ini dapat memberikan nilai default kepada parameter walaupun tanpa argumen.

Walaupun terlihat sederhana fitur Default Parameter Value pada kotlin ini akan sangat membantu fleksibilitas dalam membangun suatu program yang kita buat.

fun pangGilan(sapaan:String = "Halo",nama:String = "[Belum di isi]", umur:Int = 0){
    println("$sapaan $nama, umur anda $umur")
    println()
}

fun main() {
    pangGilan() //tidak mengisi argumen apapun
    pangGilan(umur= 21, nama = "Mira", sapaan = "Selamat pagi")
}

>> Halo [Belum di isi], umur anda 0
>>
>> Selamat pagi Mira, umur anda 21

Pada fungsi main, pertama kita coba tidak mengisi argument (Baris 7) yang akan menampilkan value default yang sudah di atur.

Kemudian pada Baris 8 kita isikan nilai valuenya maka nilai default pada parameternya akan tergantikan dengan value yang baru.

Leave a Reply

Your email address will not be published. Required fields are marked *