Les variables-les inférences de type et les types de donnée dans Kotlin


Salut guest.

Dans ce tutoriel, nous allons parler des variables, comment déclarer une variable, des types de donnée dans Kotlin et enfin nous parlerons de l’inférence de type dans Kotlin.

Si vous êtes tombé sur cet article par hasard , vous pouvez lire cet article sur comment installer et configurer Kotlin dans Eclipse

Table des matières

Les variables

De manière générale, une variable est un espace réservé en mémoire pour stoker des données telles que des chiffres, des lettres, des phrases, etc .

Les variables immuables ( Immutable variable)

Une variable immuable est une variable dont vous ne pouvez pas réassigner de valeur.C’est à dire qu’une variable immuable est une variable dont vous ne pouvez plus changer la valeur après son initialisation. Dans Kotlin une variable immuable est déclarer avec le mot clé val .Voir l’exemple

fun main() {
 val nombre: Int = 10
 nombre=20 //Erreur:Val cannot be reassigned
}

Dès que vous essayez de réassigner une valeur à une variable déclarer avec le mot clé Val, le compilateur génère une erreur(Val cannot be reassigned comme à la ligne 3).

Variable mutable(Mutable variable)

Contrairement à une variable immuable,une variable mutable est une variable dans laquelle on peut réassigner la valeur .Une variable mutable est déclaré avec le mot clé var.Voir l’exemple

fun main() {
 var nameLangage = "Java"
 nameLangage = "Kotlin" //Correct
}

Inférence de type(Type inference)

Bien que Kotlin soit un langage à typage statique (Un langage dans lequel le type de la variable est déterminé au moment de la compilation), vous n’êtes pas obligé de spécifier explicitement le type de chaque variable que vous déclarez.

Le compilateur peut déterminer le type de la variable à partir de la valeur assignée.

Vous pouvez donc déclarer une variable sans spécifié son type de la manière suivante

val name = "Luc"


Si vous souhaitez explicitement spécifier le type de chaque variable,vous pouvez le faire ainsi

 val name: String = "Luc"
 val nombre: Int=10

Vous devez obligatoirement spécifier le type de chaque variable si vous n’initialiser pas chaque variable durant leur déclaration.Voir l’exemple

 val name: String // Correct
 val nombre: Int // Correct
 val age // Erreur:The variable must either have a Type annotation or 
 //be initialized
 age=10 // Assignation différée

Les différentes manière de déclarer un variable dans Kotlin

Comme nous l’avons vue précédemment, vous pouvez spécifier ou non le type de chaque variable durant la déclaration de la variable.Voici les différentes manière de déclarer une variable dans Kotlin

 val niveau: Int = 1  // assignation d'une valeur immédiate
 val niveau2 = 10   // Le type 'Int' est inféré
 val seuil: Int  // Le type est requis quand vous n'initialiser pas la variable
 seuil = 3       // Assignation différée

Les commentaires dans Kotlin

Comme la plupart des langages de programmation moderne, Kotlin supporte les commentaires sur une ligne ou sur plusieurs lignes(en bloc)

//Commentaire sur une ligne
 
 /*
 Les commentaires sur
 plusieurs lignes
  */

Les types de donnée dans Kotlin

Dans un langage de programmation moderne tel que Kotlin, les types de donnée sont utilisés pour organiser les valeurs que vous assignez a chaque variable et pour déterminer les opérations qui peuvent être effectuer sur ces valeurs.

Comme la plupart des langages de programmation, Kotlin possède un ensemble de type prédéfini tel que Boolean, Int, Char etc.

Dans Kotlin tout est objet (même les types tel que Int,Char etc).Vous pouvez donc appeler des propriétés et des fonctions sur n’importe quelles variables.

Il faut aussi savoir que Kotlin représente en interne durant l’exécution les types de base tel que Int, Char, Boolean, etc comme des valeurs primitives. Pour les utilisateurs comme nous, ces types primitives représentent des classes ordinaires.Ce qui nous permet par exemple d’appeler un fonction membre sur un Int. Voir l’exemple

val niveau= 2;
val niveauInString: String =niveau.toString()

Dans Kotlin, il existe un ensemble de type de donnée prédéfini tel que

  • Les nombres (Numbers)
  • Les Booléens (Boolean)
  • Les caractères (Characters)
  • Les Tableaux (Array)
  • Les chaines de caractère (Strings)

Les nombres(numbers)

Comme en Java, Kotlin fourni 6 types de donnée prédéfinie regroupés en deux type pour représenter les nombres

Les entiers

Bytes: 8 bits

Vous pouvez écrire un Byte avec 8 bits dont la valeur est comprise entre -128 et 127.Voir l’exemple suivant

val mbyte: Byte = 20
val size: Byte = 100

Short: 16 bits

Vous pouvez écrire un Short avec 16 bits dont la valeur est comprise entre -32768 et 32767.Voir l’exemple suivant

val volume1: Short = 150
val volume2: Short = 200    

Int: 32 bits

Vous pouvez écrire un Int avec 32 bits dont la valeur est comprise entre -2,147,483,648 (-231) et 2,147,483,647 (231 – 1) . Voir l’exemple suivant

val largeur: Int = 300
val longueur: Int = 500

Long: 64 bits

Vous pouvez écrire un Long avec 64 bits dont la valeur est comprise entre -9,223,372,036,854,775,808 (-263) et 9,223,372,036,854,775,807 (263 – 1)
.Voir l’exemple suivant

val surface: Long = 1000
val perimetre: Long = 3000   

Les nombres à virgule flottant

Pour représenter les nombres à virgule flottante, Kotlin fournit le type Float et le type Double.Un Float et un Double diffère sur le nombre de chiffre décimal qu’ils peuvent stoker..

Float: 32 bits

Un valeur Float peut est écrit avec 32 bits avec une précision simple pour les chiffre décimaux.Vous pouvez lire cet article pour en savoir plus sur la précision des chiffre décimaux des Float et Double

val mFloat1: Float = 200.23f
val mFloat2: Float = 100.30F    

Double: 64 bits

Une valeur Double peut être écrit avec 64 bits avec une précision double pour les chiffres décimaux

val mDouble1: Double = 90.10
val mDouble2: Double = 80.50   

Booleans

Une variable booléen est une variable qui ne peux avoir que deux valeurs : vrai(true) et faux (false).Le type Boolean est utilisé pour représenter les booléens.

val isActivate: Boolean = false;
val isLoding: Boolean = true    

Char

Les caractères sont représentés en utilisant le type Char.Pour écrire un caractère, on utilise les simples quote. Voir l’exemple

val charA: Char = 'A'
val charB: Char = 'B'    

Dans Kotlin, un caractère ne peux pas être traiter comme un nombre.

Vous ne pouvez donc pas vérifier si un caractère est un nombre dans Kotlin de la manière suivante

val char1: Char = '2'

 if(char1==2){ //Vous ne pouvez pas appliquer l'opérateur == sur un caractère
     
 }
 

Vous pouvez convertir un caractère en entier comme dans l’exemple suivant

val char1: Char = '2' 
val number: Int = char1.toInt() 
   

Dans Kotlin vous pouvez aussi écrire des caractère spéciaux.Vous pouvez écrire un caractère spécial en l’échappant avec une barre oblique inverse(\).Voici quelques caractères spéciaux \t , \b, \n, \r.

String

Les chaines de caractère sont représentées par le type String.Les chaines de caractère sont aussi immuable(Immutable), c’est à dire que vous ne pouvez pas changer une chaîne de caractère en changeant certains de ces éléments.

Vous pouvez déclarer une chaîne de caractère comme dans l’exemple suivant.

val mString: String = "Les variables dans kotlin"

val name: String = "Joel"

Vous pouvez aussi itérer une chaîne de caractère avec une boule for comme dans l’exemple suivant

 val mString: String = "Les variables dans kotlin"
 for (valeur in mString){
     println(valeur)
 }

Les chaines de caractère littéraux

Dans Kotlin, il existe deux type de chaîne de caractère littéraux, les chaines de caractère littéraux échappées contenant des caractères échappé et les chaines de caractère littéraux brutes qui peuvent être écrites sur plusieurs ligne

Les chaines de caractère littéraux échappées

Vous pouvez déclarer une chaîne de caractère littéral échappée comme suit

val litteral1: String = "Ma chaine litterale échappée \n"
val litteral2: String = "Ma chaine litteral échappée 2 \n"

Les chaines de caractère littéraux brutes

Vous pouvez déclarer une chaîne de caractère littérale brute comme suit

val chaineBrute1 = """ Kotlin est 
    | un language de programmation 
    | à typage statique
"""

Vous pouvez aussi récupérer un élément à un indice de positon dans une chaîne de caractère comme suit

val name: String ="Noé"
val secondChar: Char = name[1]    

Modèle de chaîne (String Template)

Un modèle de chaîne est une chaîne de caractère dans laquelle Kotlin peut interpréter des variables ou une portion de code.Cela est utile si vous ne souhaitez pas concaténer une chaîne de caractère simple et une variable comme cela se fait en Java.

Vous pouvez déclarer un modèle de chaîne de caractère comme suit.

val nbPlace: Int = 10
println("Le nombre de place disponible est $nbPlace")

Tableaux (Array)

Dans Kotlin, les tableaux sont représentés par la classe Array qui possède les fonctions get and set(qui se transforme en crochets ([]) respectivement pour la récupération et pour l’affectation d’un élément du tableau selon la convention des surcharge des opérateurs) et possède une propriété size pour récupérer la taille du tableaux et enfin possède en plus d’autres fonctions membres.

Dans un prochain tutoriel nous parlerons de la surcharge des opérateurs(operator overloading)

Vous pouvez créer un tableau dans Kotlin en utilisant la fonction membre arrayOf() ou en utilisant le constructeur Array() de la classe Array

Créer un tableau à l’aide de la fonction arrayOf

Vous pouvez créer un tableau en utilisant la fonction arrayOf comme suit.

val langages = arrayOf("Kotlin","Java","Javascript","PHP")
val ages = arrayOf(10,5,19,13)   

Vous pouvez aussi préciser le type de donnée des éléments du tableau comme suit

val langages = arrayOf<String>("Kotlin","Java","Javascript","PHP")
val ages = arrayOf<Int>(10,5,19,13)   

Accéder aux éléments d’un tableau

Pour accéder à un élément du tableau, vous pouvez procéder comme suit.

val langages = arrayOf<String>("Kotlin","Java","Javascript","PHP")
val langageJava = langages[1]
val langgageKotlin = langages[0] 

Comme nous l’avons préciser précédemment, la classe Array possède une fonction get qui remplace les crochets([]) en interne par la fonction get pour récupérer un élément du tableau grâce à la convention des surcharges des opérateurs.

Vous pouvez modifier les éléments d’un tableau comme suit

val langages = arrayOf<String>("Kotlin","Java","Javascript","PHP")
langages[1]="Groovy"
langages[2]="Python"

Créer un tableau à l’aide du constructeur de la classe Array.

Vous pouvez aussi créer un tableau à l’aide du constructeur de la classe Array en passant en premier paramètre le taille du tableau puis une fonction qui retourne chaque élément du tableau à partir de son index.

Les tableaux primitifs ( Primitives types Array )

Kotlin possède aussi des classes spécialisées pour représenter les tableaux de type primitif sans passé par la conversion d’un type de donnée primitive .Par exemple un int en Integer

Vous pouvez créer un tableau de type primitif comme suit.

val intArray = intArrayOf(1,3,5)
val longArray = longArrayOf(20,10,5)
val charArray = charArrayOf('A','Z','C')  

Conclusion

Dans ce tutoriel, nous avons vue les variables,l’inférence de type et les types de donnée dans Kotlin. A présent vous avez les connaissances nécessaire pour déclarer des variable dans Kotlin


Laisser un commentaire

Résoudre : *
27 × 1 =


%d