Bu makalede, örnekler yardımıyla varsayılan ve adlandırılmış argümanlar hakkında bilgi edineceksiniz.
Kotlin Varsayılan Argümanı
Kotlin'de, fonksiyon tanımındaki parametrelere varsayılan değerler sağlayabilirsiniz.
İşlev, iletilen argümanlarla çağrılırsa, bu argümanlar parametre olarak kullanılır. Bununla birlikte, işlev bağımsız değişken (ler) iletilmeden çağrılırsa, varsayılan bağımsız değişken kullanılır.
Varsayılan argümanlar nasıl çalışır?
Durum I: Tüm bağımsız değişkenler geçti
Fonksiyon foo()
iki argüman alır. Bağımsız değişkenler varsayılan değerlerle sağlanır. Ancak, foo()
yukarıdaki programda her iki argümanı da ileterek çağrılır. Bu nedenle, varsayılan bağımsız değişkenler kullanılmaz.
Harf ve sayı değeri, 'x'
sırasıyla foo()
işlevin içinde ve 2 olacaktır .
Durum II: Tüm argümanlar iletilmez
Burada, foo()
işleve yalnızca bir (ilk) argüman geçirilir . Bu nedenle, ilk bağımsız değişken, işleve iletilen değeri kullanır. Bununla birlikte, ikinci bağımsız değişken işlev çağrısı sırasında iletilmediğinden, ikinci bağımsız değişken numarası varsayılan değeri alacaktır.
Harf ve sayı değeri 'y'
, foo()
işlevin içinde sırasıyla ve 15 olacaktır .
Durum III: Hiçbir argüman iletilmez
Burada foo()
fonksiyon herhangi bir argüman iletilmeden çağrılır. Bu nedenle, her iki argüman da varsayılan değerlerini kullanır.
Harf ve sayı değeri 'a'
, foo()
işlevin içinde sırasıyla ve 15 olacaktır .
Örnek: Kotlin Varsayılan Değişkeni
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) )
Programı çalıştırdığınızda, çıktı:
Hiçbir bağımsız değişken iletilmediğinde elde edilen çıktı: =============== '*' ilk bağımsız değişken olarak kullanılır. İlk bağımsız değişken iletildiğinde çıktı: *************** '*' ilk bağımsız değişken olarak kullanılır. 5 ikinci argüman olarak kullanılır. Her iki bağımsız değişken de iletildiğinde çıktı: *****
Kotlin adlı argüman
Adlandırılmış argüman hakkında konuşmadan önce, yukarıdaki kodun küçük bir değişikliğini ele alalım:
fun displayBorder(character: Char = '=', length: Int = 15) ( for (i in 1… length) ( print(character) ) ) fun main(args: Array) ( displayBorder(5) )
Burada, displayBorder()
işleve ikinci argümanı aktarmaya çalışıyoruz ve ilk argüman için varsayılan argümanı kullanıyoruz. Ancak bu kod bir hata verecektir. Bunun nedeni derleyicinin Int
, karaktere ( Char
türe) 5 ( değer) sağlamaya çalıştığımızı düşünmesidir .
Bu durumu çözmek için adlandırılmış argümanlar kullanılabilir. İşte 'nasıl:
Örnek: Kotlin adlı bağımsız değişken
fun displayBorder(character: Char = '=', length: Int = 15) ( for (i in 1… length) ( print(character) ) ) fun main(args: Array) ( displayBorder(length = 5) )
Programı çalıştırdığınızda, çıktı:
=====
Yukarıdaki programda, length = 5
işlev tanımındaki uzunluk parametresinin bu değeri alması gerektiğini belirten adlandırılmış argument ( ) kullanıyoruz (argümanın konumu önemli değil).
İlk argüman karakteri '='
programdaki varsayılan değeri kullanır .