Conditions

If / Else

if (Condition1) {
	// Si Condition1 est vraie
}
else if (Condition2) {
	// Sinon, si Condition2 est vraie
}
else {
	// Sinon (aucune des conditions précédentes)
}

Chaque condition est évaluée du haut vers le bas. Dès qu’une est vraie, les suivantes sont ignorées (court-circuit). Le else final joue le rôle de “valeur par défaut” si aucune condition n’est vraie.

Ordre d’évaluation des opérateurs logiques

Prenons l’exemple suivant :

if (condition1 || condition2 && condition3)
{
    Console.WriteLine("Good to go");
}

&& sera évalué avant le || Il est alors impératif de mettre des parenthèses pour prioriser une condition OR sur une AND.

if ((condition1 || condition2) && condition3)
{
    Console.WriteLine("Good to go");
}

Switch

Il s’agit d’une syntaxe plus courte pour une série d’instructions conditionnelles basées sur une seule expression.

int speed = 100;

switch (speed)
{
   case < 25:
      // Executes if the value of speed is less than 25
      Console.WriteLine("Going slowly");
      break;
   case 25:
      // Executes if the value of speed is equal to 25
      Console.WriteLine("Going at correct speed");
      break;
   case < 30:
      // Executes if the value of speed is between 25 and 30
      Console.WriteLine("Going slightly too fast");
      break;
   default:
      // The speed must be over 30 due to the above conditions
      Console.WriteLine("Going much too fast");
      break;
}

Cette syntaxe peut être encore davantage simplifiée (expression switch) :

int speed = 28;

string message = speed switch
{
	< 25 => "Going slowly",
	25 => "Going at correct speed",
	< 30 => "Going slightly too fast",
	_ => "Going much too fast" // La valeur par défaut si rien ne correspond
};

Console.WriteLine(message);

Ternary

Exécute simplement une expression si une condition est true et une autre expression dans tous les autres cas. C’est comme une instruction en if en plus allégée.

string color = "green";
string movement = (color == "green") ? "go" : "stop";

Énumération

Une énumération est un ensemble de constantes prédéfinies (valeurs immuables), utilisées pour représenter un ensemble de choix limités et clairs.

enum Level
{
  Low,
  Medium,
  High
}

On peut y accéder ensuite de la façon suivante :

Level myVar = Level.Medium;
Console.WriteLine(myVar);