I denne artikel lærer du at bruge infix-notation til at kalde en funktion i Kotlin (ved hjælp af eksempler).
Før du lærer, hvordan du opretter en funktion med infix-notation, lad os udforske to almindeligt anvendte infix-funktioner.
Når du bruger ||og &&betjener, ser compileren op henholdsvis eller og og fungerer og kalder dem under emhætten.
Disse to funktioner understøtter infix-notation.
Eksempel: Kotlin eller & og funktion
fun main(args: Array) ( val a = true val b = false var result: Boolean result = a or b // a.or(b) println("result = $result") result = a and b // a.and(b) println("result = $result") )
Når du kører programmet, vil output være:
resultat = sandt resultat = falsk
I ovenstående program bruges i a or bstedet for a.or(b)og i a and bstedet for a.and(b). Det var muligt, fordi disse to funktioner understøtter infix-notation.
Hvordan oprettes en funktion med infixnotation?
Du kan foretage et funktionsopkald i Kotlin ved hjælp af infix-notation, hvis funktionen
- er en medlemsfunktion (eller en udvidelsesfunktion).
- har kun en enkelt parameter.
- er markeret med
infixnøgleord.
Eksempel: Brugerdefineret funktion med infixnotation
class Structure() ( infix fun createPyramid(rows: Int) ( var k = 0 for (i in 1… rows) ( k = 0 for (space in 1… rows-i) ( print(" ") ) while (k != 2*i-1) ( print("* ") ++k ) println() ) ) ) fun main(args: Array) ( val p = Structure() p createPyramid 4 // p.createPyramid(4) )
Når du kører programmet, vil output være:
* * * * * * * * * * * * * * * *
Her createPyramid()er en infix-funktion, der skaber en pyramidestruktur. Det er en medlemsfunktion i klassen Structure, tager kun en parameter af typen Intog starter med nøgleord infix.
Antallet af rækker i pyraminden afhænger af argumentet, der sendes til funktionen.








