Maison  >  Article  >  développement back-end  >  Opérateurs conditionnels en C#

Opérateurs conditionnels en C#

王林
王林original
2024-09-03 15:08:32979parcourir

Les opérateurs conditionnels en C#, comme leur nom l'indique, font référence à l'utilisation de trois opérandes dans un programme C#. Les opérandes utilisés pour désigner une condition, la valeur si la condition est vraie et la valeur si la condition est fausse. Le symbole utilisé pour représenter l’opérateur conditionnel en C# est « ? : ' (les guillemets doivent être ignorés car ils ne font pas partie du symbole et sont utilisés pour encadrer le symbole distinctif).

Syntaxe :

condition_expression ? first_expression : second_expression;

Comment définir des opérateurs conditionnels ?

Le premier opérande est spécifié avant le ? et contient la définition de l’expression de la condition d’évaluation. Des précautions doivent être prises lors de la définition de l'expression de telle sorte que la condition d'évaluation doive toujours aboutir à un résultat booléen. Aucune spécification d’expression booléenne ou spécification d’expression défectueuse ne doit entraîner une erreur de compilation. La deuxième expression spécifiée avant le symbole : contient la définition ou l'affectation au cas où la condition définie dans la première expression serait vraie. Ainsi si la valeur de retour déterminée dans la première expression est vraie le deuxième opérande est évalué.

Le troisième opérande de la définition contient la définition de l'expression au cas où le résultat conditionnel du premier opérande serait faux. Alternativement, les opérateurs conditionnels sont appelés opérateurs ternaires ou opérateurs if en ligne. L'utilisation majeure des opérateurs conditionnels en C# se trouve comme alternative à la boucle if-else où elle est utilisée pour réduire la taille du bloc de code. L'autre avantage majeur de l'opérateur conditionnel est qu'il traduit le flux de compilation en termes d'instructions de branchement, ce qui réduit l'utilisation d'instructions if imbriquées requises.

L'opérateur conditionnel suit le principe d'association à droite c'est à dire que les opérations sont regroupées de droite à gauche. De plus, le temps de compilation est considérablement réduit car l'opérateur conditionnel n'évalue qu'une seule expression de valeur d'opérande. La valeur des deuxième et troisième opérandes est limitée aux fonctions d'affectation, d'incrémentation et de décrémentation.

Exemples d'opérateurs conditionnels en C#

Essayons de comprendre l'approche de la programmation C# traditionnelle avec l'opérateur conditionnel.

Exemple n°1

Essayons d'abord une instruction if else régulière :-

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int x = 10, y = 25;
string result1;
if (x > y)
{
result1 = "value of x is greater than y";
}
else
{
result1 = "value of x is less than y";
}
Console.WriteLine(result1);
Console.ReadLine();
}
}
}

Sortie :

Opérateurs conditionnels en C#

Le programme ci-dessus illustre une simple instruction if-else qui compare la valeur de deux variables x et y et imprime un résultat selon la valeur qui leur est attribuée et lors de l'évaluation de la condition, x> oui.

Exemple n°2

Essayons de reproduire le programme ci-dessus en utilisant un opérateur conditionnel →.

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int x = 10, y = 25;
string result1;
//using the Ternary Operator (?:) for the comparison of x and y variable
result1 = (x > y) ? "value of x is greater than y" : "value of x is less than y";
Console.WriteLine(result1);
Console.ReadLine();
}
}
}

Sortie :

Opérateurs conditionnels en C#

Nous allons maintenant identifier l'utilisation majeure de l'opérateur conditionnel lorsqu'il est utilisé comme moyen de simplifier les nids complexes if-else if en fournissant des critères de branche ou imbriqués qui sont beaucoup moins complexes que if-else si boucle.

Exemple #3

Pour comprendre la même chose, considérons d'abord un programme if-else if régulier :-

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string comparisonResult;
int a = 25, b = 50;
if (a < b)
{
comparisonResult = "value of a is less than b ";
}
else if (a > b)
{
comparisonResult = " value of a is more than b";
}
else
{
comparisonResult = "a and b are both equal in value ";
}
Console.WriteLine(comparisonResult);
Console.ReadLine();
}
}
}

Sortie :

Opérateurs conditionnels en C#

Exemple n°4

Nous allons maintenant voir comment la même logique est implémentée en C# à l'aide des opérateurs conditionnels.

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string comparisonResult;
int a = 25, b = 50;
//Nested Ternary Operator (?:)
comparisonResult = (a < b) ? "value of a is less than b" : (a > b) ? "value of a is more than b" : "a and b are both equal in value";
Console.WriteLine(comparisonResult);
Console.ReadLine();
}
}
}

Sortie :

Opérateurs conditionnels en C#

Nous voyons ainsi la différence entre les deux car la complexité des instructions if-else if est fortement réduite par l'utilisation d'opérateurs conditionnels imbriqués. En comprenant également le flux du programme, nous découvrons le flux du curseur comme bon principe d'association

(a < b) ? "value of a is less than b" : (a > b) ? "value of a is more than b" : "a and b are both equal in value";

Les blocs de code sont désignés par une couleur distincte comme pour une instruction comme A ? B : C ? D : E le même est évalué comme (A ? B : C) ? D : E.

Conclusion

Les opérateurs conditionnels sont trois opérateurs d'opérandes utilisés dans les opérations d'évaluation et d'affectation ayant des affectations distinctes pour la valeur évaluée de l'opérande conditionnel, c'est-à-dire vrai ou faux. Les opérateurs conditionnels suivent le principe d'association à droite qui fait référence au fait que les opérations sont regroupées de droite à gauche. L'opérateur conditionnel ne peut pas être surchargé à l'aide d'un type défini par l'utilisateur et limité à une valeur booléenne pour l'évaluation. Les opérateurs conditionnels constituent le remplacement le plus approprié pour les longues instructions if-else if et réduisent également le temps de compilation en offrant la possibilité d'évaluer les instructions ramifiées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Opérateurs logiques en C#Article suivant:Opérateurs logiques en C#