C# if-else Abréviation
Les instructions If-Else
sont utilisées pour exécuter des blocs de code conditionnels. Nous spécifions une condition dans le bloc if
. Lorsque cette condition est remplie, le bloc de code if
est exécuté.
Sinon, le bloc de code else
est exécuté. Dans ce tutoriel, nous allons étudier l’opérateur ternaire ?:
, le raccourci if-else
en C#.
Utilisation de l’opérateur ternaire en C#
L’opérateur ternaire tire son nom du fait qu’il prend trois arguments en entrée : la condition, le bloc de code if
et le bloc de code else
.
Tous les trois sont enveloppés dans un raccourci d’une ligne, ce qui rend le code concis et propre. Il permet d’obtenir les mêmes fonctionnalités que if-else
dans le code minimaliste.
using System;
class Program {
public static void Main() {
int exp1 = 5;
double exp2 = 3.0;
bool condition = 5 > 2;
var ans = condition ? exp1 : exp2;
Console.WriteLine(ans);
}
}
Production:
5
Dans l’exemple ci-dessus, l’opérateur ternaire évaluera d’abord la condition donnée. Si la condition spécifiée est true
, on passe à exp1
, séparé par un ?
état. Sinon, on passe à exp2
, séparé de exp1 par un :
.
La puissance des opérateurs ternaires ne s’arrête pas là car nous savons que les instructions if-else
peuvent être imbriquées. Les opérateurs ternaires peuvent également obtenir la même chose avec beaucoup moins de code.
Utilisation des opérateurs ternaires imbriqués en C#
using System;
class Program {
public static void Main() {
int alcoholLevel = 90;
string message = alcoholLevel >= 100
? "You are too drunk to drive"
: (alcoholLevel >= 80 ? "Come on live a little" : "Sober :)");
Console.WriteLine(message);
}
}
Production:
Come on live a little
Dans l’exemple ci-dessus, nous produisons plusieurs messages basés sur le niveau d’alcool d’une personne à l’aide d’opérateurs ternaires imbriqués, tous regroupés dans une seule ligne de code.
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn