In dit artikel leer je de tussenvoegselnotatie gebruiken om een functie in Kotlin aan te roepen (met behulp van voorbeelden).
Voordat u leert hoe u een functie met tussenvoegselnotatie maakt, gaan we eerst eens kijken naar twee veelgebruikte tussenvoegselfuncties.
Wanneer u ||
en &&
bewerkingen gebruikt, zoekt de compiler respectievelijk naar of en en functies, en roept ze onder de motorkap.
Deze twee functies ondersteunen tussenvoegselnotatie.
Voorbeeld: Kotlin of & en functie
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") )
Wanneer u het programma uitvoert, is de uitvoer:
resultaat = waar resultaat = onwaar
In het bovenstaande programma wordt in a or b
plaats van a.or(b)
, en in a and b
plaats van a.and(b)
gebruikt. Het was mogelijk omdat deze twee functies infix-notatie ondersteunen.
Hoe maak je een functie met tussenvoegselnotatie?
U kunt een functieaanroep in Kotlin maken met tussenvoegselnotatie als de functie
- is een lidfunctie (of een extensiefunctie).
- heeft slechts één enkele parameter.
- is gemarkeerd met een
infix
trefwoord.
Voorbeeld: door de gebruiker gedefinieerde functie met tussenvoegselnotatie
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) )
Wanneer u het programma uitvoert, is de uitvoer:
* * * * * * * * * * * * * * * *
Hier createPyramid()
is een tussenvoegselfunctie die een piramidestructuur creëert. Het is een lidfunctie van de klasse Structure
, heeft slechts één parameter van het type nodig Int
en begint met een trefwoord infix
.
Het aantal rijen van de pyraminde hangt af van het argument dat aan de functie is doorgegeven.