#Les opérateurs

Faisons un tour d’horizon des différents opérateurs mis à disposition par Dart pour développer nos applications 🧐


#Assignation

Classique et commun à tous les langages de programmation, l’opérateur = permet d’assigner ou de réassigner une valeur à une variable.

String firstName = "Valentin";
firstName = "Henri";

#Arithmétiques

Ces opérateurs nous permettent de réaliser des opérations mathématiques.

int numA = 3;
int numB = 7;

// Addition
int add = numA + numB;
print(add); // 10

// Soustraction
int sub = numA - numB;
print(sub); // -4

// Multiplication
int multiply = numA * numB;
print(multiply); // 21

// Division
double div = numA / numB;
print(div); // 0.42857142857142855

// Division qui retourne un entier
int div = numA ~/ numB;
print(div); // 0

// Modulo
int eggs = 20;
int boxSize = 8;
int remainingEggs = eggs % boxSize;
print(remainingEggs); // 4

#D’assignation rapide

ExempleÉquivalentOpération
a += ba = a + bAddition
a -= ba = a - bSoustraction
a *= ba = a * bMultiplication
a /= ba = a / bDivision
a %= ba = a % bModulo
a++a = a + 1Incrémentation
a--a = a - 1Décrémentation

#Comparaison

ExempleNomRésultat
a == bEgaltrue si a est égal à b
a != bDifférenttrue si a est différent de b
a < bInférieur àtrue si a est strictement inférieur à b
a > bSupérieur àtrue si a est strictement supérieur à b
a <= bInférieur ou égal àtrue si a est plus petit ou égal à b
a >= bSupérieur ou égal àtrue si a est plus grand ou égal à b

#Logiques

ExempleÉquivalentRésultat
a or bORtrue si a OU b valent true
!aNOTtrue si a n’est pas true
a && bANDtrue si a ET b sont true

#Ternaire

Une condition ternaire permet d’évaluer une expression et de renvoyer une valeur en fonction de son résultat. Sa structure est spécifique :

int age = 18;
String isAdult = (age < 18) ? "Je suis mineur" : "Je suis majeur";

print(isAdult); // "Je suis majeur"

🎁 Astuce pour retenir la syntaxe d’une condition ternaire :

  • WTF -> What ? True : False

#Null coalescent

Très pratique, cet opérateur permet d’attribuer une valeur par défaut à une variable si l’expression de gauche est évaluée à null :

print(null ?? null); // null
print(null ?? 100); // 100

String? username;

String defaultUsername = username ?? 'Guest';
print('Welcome, $defaultUsername'); // Welcome, Guest