Fonction Kotlin (avec exemple)

Table des matières

Dans cet article, vous découvrirez les fonctions; quelles sont les fonctions, sa syntaxe et comment créer une fonction utilisateur dans Kotlin.

En programmation, la fonction est un groupe d'instructions associées qui exécutent une tâche spécifique.

Les fonctions sont utilisées pour diviser un grand programme en morceaux plus petits et modulaires. Par exemple, vous devez créer et colorier un cercle en fonction des entrées de l'utilisateur. Vous pouvez créer deux fonctions pour résoudre ce problème:

  • createCircle() Fonction
  • colorCircle() Fonction

La division d'un programme complexe en composants plus petits rend notre programme plus organisé et plus gérable.

De plus, cela évite les répétitions et rend le code réutilisable.

Types de fonctions

Selon qu'une fonction est définie par l'utilisateur ou disponible dans la bibliothèque standard, il existe deux types de fonctions:

  • Fonction de bibliothèque standard de Kotlin
  • Fonctions définies par l'utilisateur

Fonction de bibliothèque standard de Kotlin

Les fonctions de bibliothèque standard sont des fonctions intégrées dans Kotlin qui sont facilement disponibles pour une utilisation. Par exemple,

  • print() est une fonction de bibliothèque qui imprime le message sur le flux de sortie standard (moniteur).
  • sqrt()renvoie la racine carrée d'un nombre ( Doublevaleur)
 fun main(args: Array) ( var number = 5.5 print("Result = $(Math.sqrt(number))") )

Lorsque vous exécutez le programme, la sortie sera:

 Résultat = 2,345207879911715

Voici un lien vers la bibliothèque standard de Kotlin à explorer.

Fonctions définies par l'utilisateur

Comme mentionné, vous pouvez créer vous-même des fonctions. Ces fonctions sont appelées fonctions définies par l'utilisateur.

Comment créer une fonction définie par l'utilisateur dans Kotlin?

Avant de pouvoir utiliser (appeler) une fonction, vous devez la définir.

Voici comment vous pouvez définir une fonction dans Kotlin:

 fun callMe () (// corps de la fonction) 

Pour définir une fonction dans Kotlin, un funmot-clé est utilisé. Puis vient le nom de la fonction (identifiant). Ici, le nom de la fonction est callMe.

Dans le programme ci-dessus, la parenthèse ( )est vide. Cela signifie que cette fonction n'accepte aucun argument. Vous en apprendrez plus sur les arguments plus loin dans cet article.

Les codes entre accolades ( )constituent le corps de la fonction.

Comment appeler une fonction?

Vous devez appeler la fonction pour exécuter des codes dans le corps de la fonction. Voici comment:

 Appelez-moi()

Cette instruction appelle la callMe()fonction déclarée précédemment.

Exemple: programme de fonction simple

 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.") )

Lorsque vous exécutez le programme, la sortie sera:

Impression depuis la fonction callMe (). C'est cool (impression toujours de l'intérieur). Impression en dehors de la fonction callMe ().

La callMe()fonction dans le code ci-dessus n'accepte aucun argument.

De plus, la fonction ne renvoie aucune valeur (le type de retour est Unit).

Prenons un autre exemple de fonction. Cette fonction accepte les arguments et renvoie également une valeur.

Exemple: ajouter deux nombres à l'aide de la fonction

 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") )

Lorsque vous exécutez le programme, la sortie sera:

 résultat = 15

Comment fonctionnent les fonctions avec arguments et valeur de retour?

Ici, deux arguments number1 et number2 de type Doublesont passés à la addNumbers()fonction lors de l'appel de la fonction. Ces arguments sont appelés arguments réels.

 result = addNumbers (nombre1, nombre2)

Les paramètres n1 et n2 acceptent les arguments passés (dans la définition de la fonction). Ces arguments sont appelés arguments formels (ou paramètres).

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"

avec

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

Ceci est juste une brève introduction aux fonctions de Kotlin. Articles recommandés liés aux fonctions:

  • Fonctions en ligne Kotlin
  • Fonctions d'infixe de Kotlin
  • Portée de la fonction Kotlin
  • Arguments par défaut et nommés de Kotlin
  • Récurrence de Kotlin
  • Fonction récursive de Kotlin Tail
  • Fonction d'extension Kotlin
  • Fonctions et lambdas d'ordre élevé de Kotlin

Articles intéressants...