Appel de fonction Kotlin à l'aide de la notation infixe

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 bau lieu de a.or(b)et a and bau 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 infixmot-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 Intet commence par mot-clé infix.

Le nombre de lignes de la pyramide dépend de l'argument passé à la fonction.

Articles intéressants...