Conversion de types en Dart

Introduction à la conversion de types

La conversion de types en Dart concerne le changement d'une valeur d'un type de données en un autre. Ce langage prend en charge deux méthodes principales de conversion : la conversion implicite et la conversion explicite.

Conversion implicite de types

La conversion implicite se produit automatiquement lorsque des opérations incluent différentes types numériques.

Exemple

Prenons cet exemple : la variable intValue est convertie de type int (10) à type double (10.0) pour effectuer une addition avec doubleValue :

void main() {  
  int intValue = 10;  
  double doubleValue = 0.5;  

  // Démonstration de la conversion implicite lors d'une opération arithmétique  
  double result = intValue + doubleValue;  
  print(result);
}

L'exécution de ce code affichera :

10.5

Conversion explicite de types

La conversion explicite, aussi appelée "casting", se fait manuellement en utilisant des fonctions prédéfinies pour changer les valeurs d'un type à un autre. Voici les méthodes principales disponibles :

  • toString() : Convertit une valeur en chaîne.
  • toDouble() : Convertit une valeur en double.
  • toInt() : Convertit une valeur en entier.
  • parse() : Convertit une chaîne en un type numérique.
  • tryParse() : Semblable à parse(), mais renvoie null si la conversion échoue.

Exemple

Dans cet exemple, nous appelons explicitement la méthode toString() sur intValue pour convertir un entier en chaîne :

void main() {  
  var intValue = 42;  
  var stringValue = intValue.toString(); // Appel explicite de toString()  
  print(stringValue);
}

Le résultat de ce code sera :

42