Les différents types de données en Dart et leurs utilisations
Sommaire
En programmation informatique, un type de donnée, ou simplement un type, définit la nature des valeurs que peut prendre une donnée, ainsi que les opérateurs qui peuvent lui être appliqués. Wikipédia
Le langage Dart supporte plusieurs types de données qui peuvent être assignés à des variables.
Dans notre tutoriel nous allons nous focaliser sur tous les types de données sauf les runes et les symboles (rarement utilisés)
Dans le tutoriel précédent nous avions exploré la notion de variable. En effet nous avons deux méthodes permettant de définir une variable.
La première méthode définit la variable en utilisant le mot clé var suivi du nom de la variable et de la valeur qui lui est attribuée.
var vitesse = 250;
La deuxième méthode définit la variable en utilisant comme mot clé le type de la variable suivi du nom de la variable et de la valeur qui lui est attribuée.
int vitesse = 250;
En définissant une variable par son type, il sera impossible de lui assigner une valeur d'un autre type où que ce soit dans votre programme.
Il est conseillé de définir les variables à l'aide du mot clé var quand cette variable est une variable local. Nous y reviendrons plus tard dans notre apprentissage.
Pour définir des chaînes de caractères (noms, phrase), le langage Dart utilise le mot clé String.
Cette chaîne est alors passée entre des griffes. Il est possible d'utiliser une seul griffe ' ' ou deux " "
String animal = "Chien";
String marque = 'ASUS';
Si votre chaîne de caractères contient des griffes ', vous devez alors utiliser deux griffes " " pour créer votre chaîne de caractères ou faire une échappe des griffes ' contenues dans votre chaînes de caractères.
Pour échapper la griffe, il va falloir le précéder d'un back slash **\ **.
String phrase1 = "l'efficacité de Dart";
String phrase2 = "l\'efficacité de Dart";
L'opérateur d'addition + peut être utilisé pour concaténer des chaîne de caractères.
String titre = "Les chaînes de" + "caractere";
//"Les chaînes de caractères"
Pour créer une chaîne de caractères multiligne, utilisez une combinaison de trois griffes simples ou doubles ou la combinaison \n qui jouera le rôle d'un retour a la ligne.
String lorem = '''
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Phasellus sodales dolor lacus, eu ullamcorper lorem varius eget
''';
String elementum = "leo nec metus sagittis. \n et semper sem finibus";
Les types de données "nombre" sont utilisés pour définir les variables numériques. En Dart, nous avons deux types de données nombres : int et double .
Int permet de définir les nombres entiers entre -2e63 to 2e63 - 1.
int solde = 450000;
int un_million = 10e6; //10 exposant 6;
int negatif = -1;
Le type Double permet de définir les nombres décimaux.
double pi = 3.14;
double douze = 12; //Cette declartion convertira 12 en 12.0
int et double étant des types de données numériques, il est naturellement possible de leur appliquer des opérateurs comme :
double quotient = 15/2;
Faites attention au type avec lequel vous définissez vos variables provenant d'une opération. Si le type du résultat ne coïncide pas avec le type de la variable le compilateur vous sortira une erreur au moment de l'exécution.
Les valeurs pouvant être assignées aux booléens sont : true ou false soit vrai ou faux. Les booléens ont pour mot clé bool.
bool vrai = true;
bool faux = false;
Une liste est une collection d'élément du même type. Pour déclarer une liste , il suffit de passer les valeurs de la liste entre des crochets [ ] et assigner le tout à la variable.
var langues = ['francais', 'Anglais', 'Espagnol'];
Pour préciser le type des éléments de la liste , nous utiliserons une syntaxe spéciale que nous détaillerons plus tard.
List<type de donnee> nom_de_la_variable = [elements];
List<int> premiers = [2, 3, 5, 7, 11];
List paires = [2, 4, 6, 8];
List<String> smartphone = const ["iPhone", "Galaxy"];
//le mot clé permet de definir la liste comme etant une liste invariable
Les ensembles en Dart illustrent le concept d'ensemble en mathématique c'est-à-dire des collections non ordonnées d'éléments uniques.
Pour déclarer un ensemble, il suffit de passer les valeurs de la liste entre { } et assigner le tout à la variable.
var nombres = {1, 2, 3, 4, 5};
Set<double> decimaux = {1.1, 1.2, 1.3, 1.4};
Un dictionnaire est un objet qui associe des clés et des valeurs. Les clés et les valeurs peuvent être n'importe quel type d'objet. Chaque clé n'apparaît qu'une seule fois, mais vous pouvez utiliser la même valeur plusieurs fois.
var composants = {'computer': 'ordinateur', 'keyboard': 'clavier', 'mouse': 'souris'};
Le dictionnaire composants associe a une clé de type String une valeur de type String. Nous pouvons aussi faire la même déclaration comme ceci :
var composants = Map<String, String>(); // ou tout simplement Map()
composants['computer'] = 'ordinateur';
composants['keyboard'] = 'clavier';
composants['mouse'] = 'souris';
print(composants['mouse']);
//output : souris
il s’agit en fait d’un objet qui n’a aucune valeur.
Il est possible de changer le type d'une valeur. Cette opération permet de faire passer une valeur d'un type de donnée à un autre.
Attention aux types des variables
Les Convertisseurs:
int douze = 12;
double douze_decimal = douze.toDouble(); // 12.0
String douze_caractere = douze.toString(); // "12"
Les convertisseurs sont a utilises avec précaution.
Il est possible de passer une variable directement dans une chaîne de caractères. Cette méthode a aussi pour avantage de permettre d'appliquer des opérations aux variables directement dans la chaîne de caractères.
Pour cela , on passe le nom de la variable dans la chaîne de caractères précédé du signe Dollars $ .
Pour effectuer une opération sur cette variable dans la chaîne de caractères on passe le nom de la variable dans la chaîne entre des accolades { } précédées du signe Dollars $
int solde = 4500;
String message = "votre solde actuelle est de $solde euros";
//votre solde actuelle est de 4500 euros
String alert = "votre solde est à ${solde/450000} %";
//votre solde est à 0.01 %
main() {
String nom = "Apple";
var date = "1 April 1976";
List<String> produits = ["iPhone", "iMac", "Apple Watch", "Mackbook"];
int valeur = 8;
String message = """
La marque $nom a été créé le ${date.toUpperCase()}.
Sa valeur actuelle est de ${valeur * 10} milliard de dollars 💵.
L'un de ses produits les plus connus est l'${produits[0]}.
""";
print(message);
}
La marque Apple a été créé le 1 APRIL 1976.
Sa valeur actuelle est de 80 milliard de dollars 💵.
L'un de ses produits les plus connus est l'iPhone.