Kotlin Default dan Argumen Bernama (Dengan Contoh)

Pada artikel ini, Anda akan belajar tentang default dan argumen bernama dengan bantuan contoh.

Argumen Default Kotlin

Di Kotlin, Anda dapat memberikan nilai default ke parameter dalam definisi fungsi.

Jika fungsi dipanggil dengan argumen yang diteruskan, argumen tersebut digunakan sebagai parameter. Namun, jika fungsi dipanggil tanpa memberikan argumen, argumen default digunakan.

Bagaimana argumen default bekerja?

Kasus I: Semua argumen lolos

Fungsi tersebut foo()membutuhkan dua argumen. Argumen disediakan dengan nilai default. Namun, foo()dipanggil dengan melewatkan kedua argumen dalam program di atas. Karenanya, argumen default tidak digunakan.

Nilai huruf dan angka 'x'masing-masing adalah dan 2 di dalam foo()fungsi.

Kasus II: Semua argumen tidak lolos

Di sini, hanya satu argumen (pertama) yang diteruskan ke foo()fungsi tersebut. Karenanya, argumen pertama menggunakan nilai yang diteruskan ke fungsi tersebut. Namun, nomor argumen kedua akan menggunakan nilai default karena argumen kedua tidak diberikan selama pemanggilan fungsi.

Nilai huruf dan angka 'y'masing-masing adalah dan 15 di dalam foo()fungsi tersebut.

Kasus III: Tidak ada argumen yang disampaikan

Di sini, foo()fungsi dipanggil tanpa memberikan argumen apa pun. Karenanya, kedua argumen menggunakan nilai defaultnya.

Nilai huruf dan angka 'a'masing-masing adalah dan 15 di dalam foo()fungsi tersebut.

Contoh: Argumen Default Kotlin

 fun displayBorder(character: Char = '=', length: Int = 15) ( for (i in 1… length) ( print(character) ) ) fun main(args: Array) ( println("Output when no argument is passed:") displayBorder() println("'*' is used as a first argument.") println("Output when first argument is passed:") displayBorder('*') println("'*' is used as a first argument.") println("5 is used as a second argument.") println("Output when both arguments are passed:") displayBorder('*', 5) )

Saat Anda menjalankan program, hasilnya adalah:

Output ketika tidak ada argumen yang dilewatkan: =============== '*' digunakan sebagai argumen pertama. Keluaran saat argumen pertama diberikan: *************** '*' digunakan sebagai argumen pertama. 5 digunakan sebagai argumen kedua. Output ketika kedua argumen dilewatkan: *****

Kotlin menamai argumen

Sebelum berbicara tentang argumen bernama, mari kita pertimbangkan sedikit modifikasi dari kode di atas:

 fun displayBorder(character: Char = '=', length: Int = 15) ( for (i in 1… length) ( print(character) ) ) fun main(args: Array) ( displayBorder(5) )

Di sini, kami mencoba meneruskan argumen kedua ke displayBorder()fungsi, dan menggunakan argumen default untuk argumen pertama. Namun, kode ini akan memberikan kesalahan penggunaan. Itu karena kompilator mengira kita mencoba memberikan 5 ( Intnilai) ke karakter ( Chartipe).

Untuk mengatasi situasi ini, argumen bernama dapat digunakan. Berikut caranya:

Contoh: Kotlin bernama argumen

 fun displayBorder(character: Char = '=', length: Int = 15) ( for (i in 1… length) ( print(character) ) ) fun main(args: Array) ( displayBorder(length = 5) ) 

Saat Anda menjalankan program, hasilnya adalah:

 =====

Dalam program di atas, kami menggunakan argumen bernama ( length = 5) yang menetapkan bahwa parameter panjang dalam definisi fungsi harus mengambil nilai ini (tidak peduli posisi argumen).

Karakter argumen pertama menggunakan nilai default '='dalam program.

Artikel yang menarik...