Domyślne i nazwane argumenty Kotlina (z przykładami)

W tym artykule dowiesz się o domyślnych i nazwanych argumentach za pomocą przykładów.

Argument domyślny Kotlina

W Kotlinie możesz podać domyślne wartości parametrów w definicji funkcji.

Jeśli funkcja jest wywoływana z przekazanymi argumentami, te argumenty są używane jako parametry. Jeśli jednak funkcja jest wywoływana bez przekazywania argumentów, używany jest argument domyślny.

Jak działają argumenty domyślne?

Przypadek I: wszystkie argumenty przeszły

Funkcja foo()przyjmuje dwa argumenty. Argumenty mają wartości domyślne. Jednak foo()jest wywoływana przez przekazanie obu argumentów w powyższym programie. W związku z tym domyślne argumenty nie są używane.

Wartość litery i cyfry będzie wynosić 'x'odpowiednio i 2 wewnątrz foo()funkcji.

Przypadek II: nie wszystkie argumenty są przekazywane

Tutaj tylko jeden (pierwszy) argument jest przekazywany do foo()funkcji. Stąd pierwszy argument używa wartości przekazanej do funkcji. Jednak numer drugiego argumentu przyjmuje wartość domyślną, ponieważ drugi argument nie jest przekazywany podczas wywołania funkcji.

Wartość litery i cyfry będzie wynosić 'y'odpowiednio 15 wewnątrz foo()funkcji.

Przypadek III: żaden argument nie jest przekazywany

Tutaj foo()funkcja jest wywoływana bez przekazywania żadnego argumentu. Dlatego oba argumenty używają wartości domyślnych.

Wartość litery i cyfry będzie wynosić 'a'odpowiednio 15 wewnątrz foo()funkcji.

Przykład: domyślny argument 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) )

Po uruchomieniu programu wynik będzie następujący:

Dane wyjściowe, gdy nie przekazano żadnego argumentu: =============== '*' jest używany jako pierwszy argument. Dane wyjściowe po przekazaniu pierwszego argumentu: *************** „*” jest używany jako pierwszy argument. 5 jest używany jako drugi argument. Dane wyjściowe po przekazaniu obu argumentów: *****

Kotlin nazwał argument

Zanim porozmawiamy o nazwanym argumencie, rozważmy małą modyfikację powyższego kodu:

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

Tutaj próbujemy przekazać drugi argument do displayBorder()funkcji i użyć domyślnego argumentu dla pierwszego argumentu. Jednak ten kod spowoduje błąd. Dzieje się tak, ponieważ kompilator uważa, że ​​próbujemy podać 5 ( Intwartość) do znaku ( Chartypu).

Aby rozwiązać tę sytuację, można użyć nazwanych argumentów. Oto jak:

Przykład: Kotlin o nazwie argument

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

Po uruchomieniu programu wynik będzie następujący:

 =====

W powyższym programie używamy nazwanego argumentu ( length = 5) określającego, że parametr długości w definicji funkcji powinien przyjmować tę wartość (nie ma znaczenia pozycja argumentu).

Pierwszy znak argumentu używa '='w programie wartości domyślnej .

Interesujące artykuły...