Kotlin-funktion (med eksempel)

Indholdsfortegnelse

I denne artikel lærer du om funktioner; hvilke funktioner der er, dens syntaks og hvordan man opretter en brugerfunktion i Kotlin.

I programmering er funktion en gruppe relaterede udsagn, der udfører en bestemt opgave.

Funktioner bruges til at opdele et stort program i mindre og modulære stykker. For eksempel skal du oprette og farve en cirkel baseret på input fra brugeren. Du kan oprette to funktioner til at løse dette problem:

  • createCircle() Fungere
  • colorCircle() Fungere

At opdele et komplekst program i mindre komponenter gør vores program mere organiseret og håndterbart.

Desuden undgår det gentagelse og gør kode genanvendelig.

Typer af funktioner

Afhængigt af om en funktion er defineret af brugeren eller tilgængelig i standardbiblioteket, er der to typer funktioner:

  • Kotlin Standard Library-funktion
  • Brugerdefinerede funktioner

Kotlin Standard Library-funktion

Standardbiblioteksfunktionerne er indbyggede funktioner i Kotlin, som er let tilgængelige til brug. For eksempel,

  • print() er en biblioteksfunktion, der udskriver besked til standardoutputstrømmen (skærm).
  • sqrt()returnerer kvadratroden af ​​et tal ( Doubleværdi)
 fun main(args: Array) ( var number = 5.5 print("Result = $(Math.sqrt(number))") )

Når du kører programmet, vil output være:

 Resultat = 2.345207879911715

Her er et link til Kotlin Standard Library, som du kan udforske.

Brugerdefinerede funktioner

Som nævnt kan du selv oprette funktioner. Sådanne funktioner kaldes brugerdefinerede funktioner.

Hvordan oprettes en brugerdefineret funktion i Kotlin?

Før du kan bruge (ringe) til en funktion, skal du definere den.

Sådan kan du definere en funktion i Kotlin:

 fun callMe () (// funktionselement) 

For at definere en funktion i Kotlin funbruges nøgleord. Derefter kommer navnet på funktionen (identifikator). Her er navnet på funktionen callMe.

I ovenstående program er parentesen ( )tom. Det betyder, at denne funktion ikke accepterer noget argument. Du vil lære om argumenter senere i denne artikel.

Koderne inden for krøllede seler ( )er funktionens krop.

Hvordan kaldes en funktion?

Du er nødt til at kalde funktionen til at køre koder inde i funktionens hoveddel. Sådan gør du:

 Ring til mig()

Denne erklæring kalder den callMe()tidligere erklærede funktion.

Eksempel: Simpel funktionsprogram

 fun callMe() ( println("Printing from callMe() function.") println("This is cool (still printing from inside).") ) fun main(args: Array) ( callMe() println("Printing outside from callMe() function.") )

Når du kører programmet, vil output være:

Udskrivning fra callMe () -funktionen. Dette er sejt (stadig udskrivning indefra). Udskrivning uden for callMe () -funktionen.

Den callMe()funktion i ovenstående kode accepterer ikke noget argument.

Funktionen returnerer heller ikke nogen værdi (returtype er Unit).

Lad os tage et andet funktionseksempel. Denne funktion accepterer argumenter og returnerer også en værdi.

Eksempel: Tilføj to numre ved hjælp af funktion

 fun addNumbers(n1: Double, n2: Double): Int ( val sum = n1 + n2 val sumInteger = sum.toInt() return sumInteger ) fun main(args: Array) ( val number1 = 12.2 val number2 = 3.4 val result: Int result = addNumbers(number1, number2) println("result = $result") )

Når du kører programmet, vil output være:

 resultat = 15

Hvordan fungerer funktioner med argumenter og returværdi?

Her Doublesendes to argumenter nummer 1 og nummer 2 af typen til addNumbers()funktionen under funktionsopkald. Disse argumenter kaldes egentlige argumenter.

 resultat = addNumbers (nummer1, nummer2)

Parametrene n1 og n2 accepterer de beståede argumenter (i funktionsdefinitionen). Disse argumenter kaldes formelle argumenter (eller parametre).

In Kotlin, arguments are separated using commas. Also, the type of the formal argument must be explicitly typed.

Note that, the data type of actual and formal arguments should match, i.e., the data type of first actual argument should match the type of first formal argument. Similarly, the type of second actual argument must match the type of second formal argument and so on.

Here,

 return sumInteger

is the return statement. This code terminates the addNumbers() function, and control of the program jumps to the main() function.

In the program, sumInteger is returned from addNumbers() function. This value is assigned to the variable result.

Notice,

  • both sumInteger and result are of type Int.
  • the return type of the function is specified in the function definition.
     // return type is Int fun addNumbers(n1: Double, n2: Double): Int (… )

If the function doesn't return any value, its return type is Unit. It is optional to specify the return type in the function definition if the return type is Unit.

Example: Display Name by Using Function

 fun main(args: Array) ( println(getName("John", "Doe")) ) fun getName(firstName: String, lastName: String): String = "$firstName $lastName"

When you run the program, the output will be:

 John Doe

Here, the getName() function takes two String arguments, and returns a String.

You can omit the curly braces ( ) of the function body and specify the body after = symbol if the function returns a single expression (like above example).

It is optional to explicitly declare the return type in such case because the return type can be inferred by the compiler. In the above example, you can replace

 fun getName (firstName: String, lastName: String): String = "$ firstName $ lastName"

med

 fun getName (firstName: String, lastName: String) = "$ firstName $ lastName" 

Dette er kun den korte introduktion til funktioner i Kotlin. Anbefalede artikler relateret til funktioner:

  • Kotlin inline-funktioner
  • Kotlin infix-funktioner
  • Kotlin-funktionsomfang
  • Kotlin standard- og navngivne argumenter
  • Kotlin rekursion
  • Kotlin Tail Rekursiv funktion
  • Kotlin-udvidelsesfunktion
  • Kotlin High Order-funktioner og lambdas

Interessante artikler...