Dans cet article, vous apprendrez à utiliser la notation infixe pour appeler une fonction dans Kotlin (à l'aide d'exemples).
Avant d'apprendre à créer une fonction ayant une notation infixe, explorons deux fonctions infixes couramment utilisées.
Lorsque vous utilisez les opérations ||
et &&
, le compilateur recherche respectivement les fonctions ou et et et les appelle sous le capot.
Ces deux fonctions prennent en charge la notation infixe.
Exemple: Kotlin ou & et fonction
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") )
Lorsque vous exécutez le programme, la sortie sera:
résultat = vrai résultat = faux
Dans le programme ci-dessus, a or b
au lieu de a.or(b)
et a and b
au lieu de a.and(b)
est utilisé. Cela a été possible car ces deux fonctions prennent en charge la notation infixe.
Comment créer une fonction avec la notation infixe?
Vous pouvez effectuer un appel de fonction dans Kotlin en utilisant la notation infixe si la fonction
- est une fonction membre (ou une fonction d'extension).
- n'a qu'un seul paramètre.
- est marqué d'un
infix
mot-clé.
Exemple: fonction définie par l'utilisateur avec notation infixe
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) )
Lorsque vous exécutez le programme, la sortie sera:
* * * * * * * * * * * * * * * *
Voici createPyramid()
une fonction infixe qui crée une structure pyramidale. C'est une fonction membre de la classe Structure
, ne prend qu'un seul paramètre de type Int
et commence par mot-clé infix
.
Le nombre de lignes de la pyramide dépend de l'argument passé à la fonction.