Hujah Kotlin Lalai dan Dinamakan (Dengan Contoh)

Dalam artikel ini, anda akan belajar mengenai argumen lalai dan dinamakan dengan bantuan contoh.

Hujah Lalai Kotlin

Di Kotlin, anda dapat memberikan nilai lalai untuk parameter dalam definisi fungsi.

Jika fungsi dipanggil dengan argumen yang dilalui, argumen tersebut digunakan sebagai parameter. Namun, jika fungsi dipanggil tanpa melewati argumen, argumen lalai digunakan.

Bagaimana argumen lalai berfungsi?

Kes I: Semua hujah diluluskan

Fungsi tersebut foo()mengambil dua argumen. Argumen diberikan dengan nilai lalai. Namun, foo()dipanggil dengan menyampaikan kedua-dua argumen dalam program di atas. Oleh itu, argumen lalai tidak digunakan.

Nilai huruf dan nombor 'x'masing-masing akan berada dan 2 di dalam foo()fungsi.

Kes II: Semua hujah tidak disahkan

Di sini, hanya satu (pertama) argumen yang dihantar ke foo()fungsi. Oleh itu, argumen pertama menggunakan nilai yang diteruskan ke fungsi. Walau bagaimanapun, nombor argumen kedua akan mengambil nilai lalai kerana argumen kedua tidak diserahkan semasa panggilan fungsi.

Nilai huruf dan nombor 'y'masing-masing akan berada dan 15 di dalam foo()fungsi.

Kes III: Tidak ada hujah yang diluluskan

Di sini, foo()fungsi dipanggil tanpa memberikan sebarang hujah. Oleh itu, kedua-dua argumen menggunakan nilai lalai.

Nilai huruf dan nombor 'a'masing-masing akan berada dan 15 di dalam foo()fungsi.

Contoh: Hujah Lalai 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) )

Semasa anda menjalankan program, outputnya adalah:

Keluaran apabila tiada argumen diluluskan: =============== '*' digunakan sebagai argumen pertama. Keluaran ketika argumen pertama dilalui: *************** '*' digunakan sebagai argumen pertama. 5 digunakan sebagai hujah kedua. Hasil apabila kedua-dua argumen diluluskan: *****

Kotlin menamakan hujah

Sebelum membincangkan mengenai argumen bernama, mari kita pertimbangkan sedikit pengubahsuaian kod 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 cuba menyampaikan argumen kedua ke displayBorder()fungsi, dan menggunakan argumen lalai untuk argumen pertama. Walau bagaimanapun, kod ini akan menyebabkan kesalahan digunakan. Ini kerana penyusun berpendapat bahawa kami cuba memberikan 5 ( Intnilai) kepada watak ( Charjenis).

Untuk menyelesaikan keadaan ini, argumen bernama boleh digunakan. Inilah 'bagaimana:

Contoh: Kotlin menamakan hujah

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

Semasa anda menjalankan program, outputnya adalah:

 =====

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

Watak argumen pertama menggunakan nilai lalai '='dalam program.

Artikel menarik...