Argumente implicite și denumite Kotlin (cu exemple)

În acest articol, veți afla despre argumentele implicite și denumite cu ajutorul exemplelor.

Kotlin Argument implicit

În Kotlin, puteți furniza valori implicite parametrilor din definiția funcției.

Dacă funcția este apelată cu argumentele trecute, acele argumente sunt utilizate ca parametri. Cu toate acestea, dacă funcția este apelată fără a trece argument (e), se utilizează argument implicit.

Cum funcționează argumentele implicite?

Cazul I: Toate argumentele au fost adoptate

Funcția foo()ia două argumente. Argumentele sunt furnizate cu valori implicite. Cu toate acestea, foo()este apelat prin trecerea ambelor argumente în programul de mai sus. Prin urmare, argumentele implicite nu sunt utilizate.

Valoarea literei și a numărului va fi 'x'și respectiv 2 în interiorul foo()funcției.

Cazul II: Toate argumentele nu sunt adoptate

Aici, doar un (primul) argument este transmis foo()funcției. Prin urmare, primul argument folosește valoarea transmisă funcției. Cu toate acestea, al doilea număr de argument va lua valoarea implicită, deoarece al doilea argument nu este trecut în timpul apelului funcțional.

Valoarea literei și a numărului va fi 'y'și respectiv 15 în interiorul foo()funcției.

Cazul III: Nu este trecut niciun argument

Aici, foo()funcția este apelată fără a trece niciun argument. Prin urmare, ambele argumente își folosesc valorile implicite.

Valoarea literei și a numărului va fi 'a'și respectiv 15 în interiorul foo()funcției.

Exemplu: Kotlin Default Argument

 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) )

Când rulați programul, ieșirea va fi:

Ieșire atunci când nu este trecut un argument: =============== '*' este utilizat ca prim argument. Ieșire la trecerea primului argument: *************** '*' este utilizat ca prim argument. 5 este folosit ca un al doilea argument. Ieșire la trecerea ambelor argumente: *****

Kotlin a numit argument

Înainte de a vorbi despre argumentul numit, să analizăm o mică modificare a codului de mai sus:

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

Aici încercăm să trecem al doilea argument displayBorder()funcției și să folosim argumentul implicit pentru primul argument. Cu toate acestea, acest cod va folosi o eroare. Acest lucru se datorează faptului că compilatorul crede că încercăm să oferim 5 ( Intvaloare) caracterului ( Chartip).

Pentru a rezolva această situație, pot fi folosite argumente numite. Iată cum:

Exemplu: Kotlin a numit argument

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

Când rulați programul, ieșirea va fi:

 =====

În programul de mai sus, utilizăm argumentul denumit ( length = 5) specificând că parametrul lungime din definiția funcției ar trebui să ia această valoare (nu contează poziția argumentului).

Primul caracter de argument folosește valoarea implicită '='în program.

Articole interesante...